Mysql外鍵約束的創(chuàng)建與刪除的使用
創(chuàng)建表時創(chuàng)建外鍵
創(chuàng)建兩個表格,
一個名為class,
create table classes( id int not null primary key, name varchar(30) );
另一個名為student
create table student( sid int not null primary key, sname varchar(30), cid int not null, constraint fk_cid foreign key(cid) references classes(id) );
這里聲明外鍵的語法為:
constraint 外鍵名 foreign key(要作為外鍵字段名) references 主表名(主表中關(guān)聯(lián)的字段)
外鍵名是在這里給外鍵新命的名字,用來標(biāo)記外鍵。
外鍵所在的表稱為“從表”,主鍵所在的表稱為主表。
給存在的表添加外鍵
也可以給已經(jīng)存在的表格添加外鍵。
alter table student add constraint fk_cid foreigh key(cid) references class(id)
語法:
alter table 從表名 add constraint 外鍵名 foreign key(cid) references 主表名(主表中關(guān)聯(lián)字段名)
刪除外鍵約束
刪除外鍵約束是指刪除某字段的外鍵屬性,而不是刪除該字段。
alter table student drop foreign key fk_cid;
語法:
alter table 從表 drop foreign key 外鍵名;
刪除外鍵是根據(jù)創(chuàng)建外鍵時命名的外鍵名,不是外鍵所在的字段名。
外鍵關(guān)聯(lián)主鍵后,主鍵所在的主表將不能被刪除。從表依然可以被刪除。
到此這篇關(guān)于Mysql外鍵約束的創(chuàng)建與刪除的使用的文章就介紹到這了,更多相關(guān)Mysql外鍵約束的創(chuàng)建刪除內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Centos7.5安裝mysql5.7.24二進(jìn)制包方式部署
這篇文章主要介紹了Centos7.5安裝mysql5.7.24二進(jìn)制包方式部署,本文分步驟給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2018-12-12mysql?8.0.29?winx64.zip安裝配置方法圖文教程
這篇文章主要為大家詳細(xì)介紹了mysql?8.0.29?winx64.zip安裝配置方法圖文教程,文中安裝步驟介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-06-06MySQL?到Oracle?實(shí)時數(shù)據(jù)同步
這篇文章主要介紹了MySQL?到Oracle?實(shí)時數(shù)據(jù)同步,本次?MySQL?數(shù)據(jù)實(shí)時同步到?Oracle大概只花了幾分鐘就完成。使用的工具是Tapdata?Cloud?,這個工具是永久免費(fèi)的,需要的朋友可以參考一下2022-01-01MySQL delete刪除數(shù)據(jù)后釋放磁盤空間的操作方法
這篇文章主要介紹了MySQL delete刪除數(shù)據(jù)后,釋放磁盤空間,文中給大家介紹了優(yōu)化表空間的多種方法,每種方法給大家介紹的非常詳細(xì),需要的朋友可以參考下2022-05-05