我們通過主表的主鍵和從表的外鍵描述主外建的關係,呈現就是一對多的關係。
例如:
1.創建一個主表(動物) 設置(Aid)爲主鍵
create table Animal(
Aid int(32) primary key auto_increment,
Aname varchar(32)
);
2.給主表添加數據
insert into Animal values(null,'哺乳動物');
insert into Animal values(null,'魚類');
insert into Animal values(null,'鳥類');
3.查看一下 Animal 表
4.創建一個從表 (動物們) 設置(key_Aid)爲從鍵
create table animals(
aid int(32) primary key auto_increment,
aname varchar(32),
key_Aid int(32)
);
5.設置主從表連接
語法: alter table 從表 add[constraint] [外鍵名稱] froeign key(從鍵) references 主表(主鍵)
alter table animals add foreign key(key_Aid) references Animal(Aid);
已經連接成功了 ,
1.插入從表數據的時候 必須要 外鍵的值 是主表裏存在的
例如:
情況1:
情況2:
2.如果主表想刪除 主鍵的某個行元素 必須要確保 從表的數據對應此行元素的
先插入一些數據:insert into animals values(null,'狗',1);
insert into animals values(null,'貓',1);
insert into animals values(null,'豬',1);
insert into animals values(null,'麻雀',2);
insert into animals values(null,'燕子',2);
insert into animals values(null,'孔雀',2);
insert into animals values(null,'鹹魚',2);
insert into animals values(null,'草魚',3);
insert into animals values(null,'黑魚',3);
insert into animals values(null,'刀魚',3);
情況1: 想刪除主鍵的一個行
因爲從表 有 魚類 ,必須要刪除掉從鍵的東西才能 刪除主鍵的元素
6.解除主表和從表的關係
alter table animals drop foreign key `animals_ibfk_1`;
alter table animals drop index `key_Aid`;