<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
MySQL多表之間的關係可以概括為:一對一、一對多/多對一關係,多對多
一個學生只有一張身份證;一張身份證只能對應一學生。
在任一表中新增唯─外來鍵,指向另一方主鍵,確保一對一關係。
一般一對一關係很少見,遇到一對一關係的表最好是合併表。
部門和員工
分析:一個部門有多個員工,一個員工只能對應一個部門實現原則:在多的一方建立外來鍵,指向一的一方的主鍵
學生和課程
分析:一個學生可以選擇很多門課程,一個課程也可以被很多學生選擇
原則:多對多關係實現需要藉助第三張中間表。中間表至少包含兩個欄位,將多對多的關係,拆成一對多的關係,中間表至少要有兩個外來鍵,這兩個外來鍵分別指向原來的那兩張表的主鍵
MySQL外來鍵約束(FOREIGN KEY)是表的一個特殊欄位,經常與主鍵約束一起使用。對於兩個具有關聯關係的表而言,相關聯欄位中主鍵所在的表就是主表(父表),外來鍵所在的表就是從表(子表)。
外來鍵用來建立主表與從表的關聯關係,為兩個表的資料建立連線,約束兩個表中資料的一致性和完整性。比如,一個水果攤,只有蘋果、桃子、李子、西瓜等4種水果,那麼,你來到水果攤要買水果就只能選擇蘋果、桃子、李子和西瓜,其它的水果都是不能購買的。
定義一個外來鍵時,需要遵守下列規則:
在create table語句中,通過foreign key關鍵字來指定外來鍵,具體的語法格式如下:
use world; -- 建立部門表 create table if not exists dept( deptno varchar(20) primary key , -- 部門號 name varchar(20) -- 部門名字 ); -- 建立員工表 create table if not exists emp2( eid varchar(20) primary key , -- 員工編號 ename varchar(20), -- 員工名字 age int, -- 員工年齡 dept_id varchar(20), -- 員工所屬部門 constraint emp2_fk foreign key (dept_id) references dept(deptno) );
外來鍵約束也可以在修改表時新增,但是新增外來鍵約束的前提是:從表中外來鍵列中的資料必須與主表中主鍵列中的資料一致或者是沒有資料。
use world; -- 建立部門表 create table if not exists dept( deptno varchar(20) primary key , -- 部門號 name varchar(20) -- 部門名字 ); -- 建立員工表 create table if not exists emp2( eid varchar(20) primary key , -- 員工編號 ename varchar(20), -- 員工名字 age int, -- 員工年齡 dept_id varchar(20), -- 員工所屬部門 constraint emp2_fk foreign key (dept_id) references dept(deptno) );
當一個表中不需要外來鍵約束時,就需要從表中將其刪除。外來鍵一旦刪除,就會解除主表和從表間的關聯關係
格式
實現
在多對多關係中,A表的一行對應B的多行,B表的一行對應A表的多行,我們要新增加一箇中間表,來建立多對多關係。
修改和刪除時,中間從表可以隨便刪除和修改,但是兩邊的主表受從表依賴的資料不能刪除或者修改。
到此這篇關於MySQL多表操作的外來鍵約束的文章就介紹到這了,更多相關mysql外來鍵約束內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45