1對多 通過主鍵外來鍵的關係來實現
多對多 通過乙個中間表來進行實現,比如使用者、角色、功能選單都是通過多對多來實現的。
create database auth character set utf8;
/*使用者表*/
create table users(
id varchar(32) primary key,
name varchar(30),
pwd varchar(32) );
/*建立角色表*/
create table roles(
id varchar(32) primary key,
name varchar(30),
des varchar(100) );
/*通過乙個中間表對映多對多的關係,多對多就是多個一對多
聯合主鍵的特點是:兩個列不能同時重複 */
create table roleuser(
uid varchar(32),
rid varchar(32),
constraint ru_pk primary key(uid,rid),
constraint ru_fk1 foreign key(uid) references users(id),
constraint ru_fk2 foreign key(rid) references roles(id) );
/*建立選單表*/
create table menus(
id varchar(32) primary key,
name varchar(50),
url varchar(100) );
/*關聯角色到選單*/
mysql 關係表 MySQL表關係的理解
關係型資料庫表之間存在各種各樣的聯絡,及一對多,多對一,多對多。這裡主要講下一對多,為什麼要建立表之間的關聯。一對多的定義 一對多關係 一對多關係是關聯式資料庫中兩個表之間的一種關係,該關係中第乙個表中的單個行可以與第二個表中的乙個或多個行相關,但第二個表中的乙個行只可以與第乙個表中的乙個行相關。一...
mysql 表參照關係 MYSQL表關係
表關係 一 外來鍵 foreign key 作用 約束當前表的某列值必須取自於另一張表的主鍵列值 外來鍵所在的列稱之為 外來鍵列 外來鍵所在的表稱之為 外來鍵表 或 子表 被外來鍵列所引用的表稱之為 主表 或 主鍵表 語法 1.建立表的同時指定外來鍵 create table 字段 型別,const...
Mysql 表的關係
成績表裡的學生姓名id和科目id通過外來鍵約束關係學生表和科目表。建立多對多的關係表 可以看成兩個一對多 create table t sid sid int primary key,id int not null create table t sub id sub id int primary k...