成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁(yè) > 知識(shí)庫(kù) > MySQL外鍵約束(FOREIGN KEY)案例講解

MySQL外鍵約束(FOREIGN KEY)案例講解

熱門(mén)標(biāo)簽:400電話可以辦理嗎 外東北地圖標(biāo)注 云南電商智能外呼系統(tǒng)價(jià)格 高清地圖標(biāo)注道路 大眾點(diǎn)評(píng)星級(jí)酒店地圖標(biāo)注 話務(wù)外呼系統(tǒng)怎么樣 拉卡拉外呼系統(tǒng) 智能外呼系統(tǒng)復(fù)位 臨清電話機(jī)器人

MySQL 外鍵約束(FOREIGN KEY)是表的一個(gè)特殊字段,經(jīng)常與主鍵約束一起使用。對(duì)于兩個(gè)具有關(guān)聯(lián)關(guān)系的表而言,相關(guān)聯(lián)字段中主鍵所在的表就是主表(父表),外鍵所在的表就是從表(子表)。

外鍵用來(lái)建立主表與從表的關(guān)聯(lián)關(guān)系,為兩個(gè)表的數(shù)據(jù)建立連接,約束兩個(gè)表中數(shù)據(jù)的一致性和完整性。比如,一個(gè)水果攤,只有蘋(píng)果、桃子、李子、西瓜等 4 種水果,那么,你來(lái)到水果攤要買(mǎi)水果就只能選擇蘋(píng)果、桃子、李子和西瓜,其它的水果都是不能購(gòu)買(mǎi)的。

主表刪除某條記錄時(shí),從表中與之對(duì)應(yīng)的記錄也必須有相應(yīng)的改變。一個(gè)表可以有一個(gè)或多個(gè)外鍵,外鍵可以為空值,若不為空值,則每一個(gè)外鍵的值必須等于主表中主鍵的某個(gè)值。

定義外鍵時(shí),需要遵守下列規(guī)則:

  • 主表必須已經(jīng)存在于數(shù)據(jù)庫(kù)中,或者是當(dāng)前正在創(chuàng)建的表。如果是后一種情況,則主表與從表是同一個(gè)表,這樣的表稱為自參照表,這種結(jié)構(gòu)稱為自參照完整性。
  • 必須為主表定義主鍵。
  • 主鍵不能包含空值,但允許在外鍵中出現(xiàn)空值。也就是說(shuō),只要外鍵的每個(gè)非空值出現(xiàn)在指定的主鍵中,這個(gè)外鍵的內(nèi)容就是正確的。
  • 在主表的表名后面指定列名或列名的組合。這個(gè)列或列的組合必須是主表的主鍵或候選鍵。
  • 外鍵中列的數(shù)目必須和主表的主鍵中列的數(shù)目相同。
  • 外鍵中列的數(shù)據(jù)類(lèi)型必須和主表主鍵中對(duì)應(yīng)列的數(shù)據(jù)類(lèi)型相同。

在創(chuàng)建表時(shí)設(shè)置外鍵約束

在 CREATE TABLE 語(yǔ)句中,通過(guò) FOREIGN KEY 關(guān)鍵字來(lái)指定外鍵,具體的語(yǔ)法格式如下:

[CONSTRAINT 外鍵名>] FOREIGN KEY 字段名 [,字段名2,…]
REFERENCES 主表名> 主鍵列1 [,主鍵列2,…]

例 1

為了展現(xiàn)表與表之間的外鍵關(guān)系,本例在 test_db 數(shù)據(jù)庫(kù)中創(chuàng)建一個(gè)部門(mén)表 tb_dept1,表結(jié)構(gòu)如下表所示。

字段名稱 數(shù)據(jù)類(lèi)型 備注
id INT(11) 部門(mén)編號(hào)
name VARCHAR(22) 部門(mén)名稱
location VARCHAR(22) 部門(mén)位置

創(chuàng)建 tb_dept1 的 SQL 語(yǔ)句和運(yùn)行結(jié)果如下所示。

mysql> CREATE TABLE tb_dept1
    -> (
    -> id INT(11) PRIMARY KEY,
    -> name VARCHAR(22) NOT NULL,
    -> location VARCHAR(50)
    -> );
Query OK, 0 rows affected (0.37 sec)

創(chuàng)建數(shù)據(jù)表 tb_emp6,并在表 tb_emp6 上創(chuàng)建外鍵約束,讓它的鍵 deptId 作為外鍵關(guān)聯(lián)到表 tb_dept1 的主鍵 id,SQL 語(yǔ)句和運(yùn)行結(jié)果如下所示。

mysql> CREATE TABLE tb_emp6
    -> (
    -> id INT(11) PRIMARY KEY,
    -> name VARCHAR(25),
    -> deptId INT(11),
    -> salary FLOAT,
    -> CONSTRAINT fk_emp_dept1
    -> FOREIGN KEY(deptId) REFERENCES tb_dept1(id)
    -> );
Query OK, 0 rows affected (0.37 sec)

mysql> DESC tb_emp6;
+--------+-------------+------+-----+---------+-------+
| Field  | Type        | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| id     | int(11)     | NO   | PRI | NULL    |       |
| name   | varchar(25) | YES  |     | NULL    |       |
| deptId | int(11)     | YES  | MUL | NULL    |       |
| salary | float       | YES  |     | NULL    |       |
+--------+-------------+------+-----+---------+-------+
4 rows in set (1.33 sec)

以上語(yǔ)句執(zhí)行成功之后,在表 tb_emp6 上添加了名稱為 fk_emp_dept1 的外鍵約束,外鍵名稱為 deptId,其依賴于表 tb_dept1 的主鍵 id。

注意:從表的外鍵關(guān)聯(lián)的必須是主表的主鍵,且主鍵和外鍵的數(shù)據(jù)類(lèi)型必須一致。例如,兩者都是 INT 類(lèi)型,或者都是 CHAR 類(lèi)型。如果不滿足這樣的要求,在創(chuàng)建從表時(shí),就會(huì)出現(xiàn)“ERROR 1005(HY000): Can't create table”錯(cuò)誤。

在修改表時(shí)添加外鍵約束

外鍵約束也可以在修改表時(shí)添加,但是添加外鍵約束的前提是:從表中外鍵列中的數(shù)據(jù)必須與主表中主鍵列中的數(shù)據(jù)一致或者是沒(méi)有數(shù)據(jù)。

在修改數(shù)據(jù)表時(shí)添加外鍵約束的語(yǔ)法格式如下:

ALTER TABLE 數(shù)據(jù)表名> ADD CONSTRAINT 外鍵名>
FOREIGN KEY(列名>) REFERENCES 主表名> (列名>);

例 2

修改數(shù)據(jù)表 tb_emp2,將字段 deptId 設(shè)置為外鍵,與數(shù)據(jù)表 tb_dept1 的主鍵 id 進(jìn)行關(guān)聯(lián),SQL 語(yǔ)句和運(yùn)行結(jié)果如下所示。

mysql> ALTER TABLE tb_emp2
    -> ADD CONSTRAINT fk_tb_dept1
    -> FOREIGN KEY(deptId)
    -> REFERENCES tb_dept1(id);
Query OK, 0 rows affected (1.38 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> SHOW CREATE TABLE tb_emp2\G
*************************** 1. row ***************************
       Table: tb_emp2
Create Table: CREATE TABLE `tb_emp2` (
  `id` int(11) NOT NULL,
  `name` varchar(30) DEFAULT NULL,
  `deptId` int(11) DEFAULT NULL,
  `salary` float DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `fk_tb_dept1` (`deptId`),
  CONSTRAINT `fk_tb_dept1` FOREIGN KEY (`deptId`) REFERENCES `tb_dept1` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312
1 row in set (0.12 sec)

注意:在為已經(jīng)創(chuàng)建好的數(shù)據(jù)表添加外鍵約束時(shí),要確保添加外鍵約束的列的值全部來(lái)源于主鍵列,并且外鍵列不能為空。

刪除外鍵約束

當(dāng)一個(gè)表中不需要外鍵約束時(shí),就需要從表中將其刪除。外鍵一旦刪除,就會(huì)解除主表和從表間的關(guān)聯(lián)關(guān)系。

刪除外鍵約束的語(yǔ)法格式如下所示:

ALTER TABLE 表名> DROP FOREIGN KEY 外鍵約束名>;

例 3

刪除數(shù)據(jù)表 tb_emp2 中的外鍵約束 fk_tb_dept1,SQL 語(yǔ)句和運(yùn)行結(jié)果如下所示。

mysql> ALTER TABLE tb_emp2
    -> DROP FOREIGN KEY fk_tb_dept1;
Query OK, 0 rows affected (0.19 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> SHOW CREATE TABLE tb_emp2\G
*************************** 1. row ***************************
       Table: tb_emp2
Create Table: CREATE TABLE `tb_emp2` (
  `id` int(11) NOT NULL,
  `name` varchar(30) DEFAULT NULL,
  `deptId` int(11) DEFAULT NULL,
  `salary` float DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `fk_tb_dept1` (`deptId`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312
1 row in set (0.00 sec)

可以看到,tb_emp2 中已經(jīng)不存在 FOREIGN KEY,原有的名稱為 fk_emp_dept 的外鍵約束刪除成功。

到此這篇關(guān)于MySQL外鍵約束(FOREIGN KEY)案例講解的文章就介紹到這了,更多相關(guān)MySQL外鍵約束(FOREIGN KEY)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • MySQL非空約束(not null)案例講解
  • MySQL 外鍵約束和表關(guān)系相關(guān)總結(jié)
  • MySQL完整性約束的定義與實(shí)例教程
  • MySQL 8.0新特性 — 檢查性約束的使用簡(jiǎn)介
  • MySQL中外鍵的創(chuàng)建、約束以及刪除
  • Mysql中索引和約束的示例語(yǔ)句
  • MySQL外鍵約束的實(shí)例講解
  • 詳解MySQL 外鍵約束
  • mysql完整性約束實(shí)例詳解
  • MySQL約束超詳解

標(biāo)簽:無(wú)錫 阿里 溫州 山西 揚(yáng)州 定西 福州 三明

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《MySQL外鍵約束(FOREIGN KEY)案例講解》,本文關(guān)鍵詞  MySQL,外鍵,約束,FOREIGN,KEY,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《MySQL外鍵約束(FOREIGN KEY)案例講解》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于MySQL外鍵約束(FOREIGN KEY)案例講解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    亚洲五月天综合| japanesexxxxfree在线观看| 国产一区二区三区av在线| 国产欧美一区二区三区在线看蜜臀| 欧美日韩一区二区三区不卡| 日韩欧美一区二区一幕| 免费黄色av片| 亚洲精品午夜在线观看| 精品国产乱码久久久久酒店| 伊人久久久久久久久久久| 欧美日韩亚洲一区在线观看| 免费下载黄色软件| 黄色综合网址| 日韩网站免费观看| 欧美一区二区精品久久911| 麻豆av免费观看| 97精品国产97久久久久久粉红| 老司机成人影院| 欧美伊人久久久久久久久影院| 欧美一二三在线| 91精品亚洲| 欧美日韩一区二区免费视频| 日日摸夜夜添夜夜添毛片av| 色男人天堂av| 久久精品性爱视频| 7777奇米亚洲综合久久| 最新日韩一区| 亚洲av毛片成人精品| 国产精品白浆流出视频| 日本中文字幕精品—区二区| 午夜国产精品影院在线观看| 久久久久久99精品| 国产一区二区观看| 国内精品国产三级国产a久久| 国产一级片免费看| 亚洲一级二级片| www久久精品| 国产精品一区二区三区在线| 激情久久久久久久| 日韩免费性生活视频播放| 欧美色视频日本高清在线观看| 国产大片精品免费永久看nba| 国产精品h片在线播放| 日韩在线理论| 欧美极品欧美精品欧美图片| 国产精品99久久久精品无码| 国产91在线亚洲| 成人黄视频免费| 亚洲国产精品国自产拍av| 中文字幕a在线观看| 国产精品入口免费视| 91精品国产91久久久久久三级| 欧美人成在线观看网站高清| 狠狠人妻久久久久久综合麻豆| 成人短剧在线观看| 刘亦菲国产毛片bd| 97碰碰视频| 欧美激情久久久久久久久久久| 91www成人久久| 成人好色电影| 日韩高清不卡一区| 国产精品久久久国产盗摄| 日韩成人a**站| 国产精品免费久久久久影院| 美日韩精品免费观看视频| 一本色道久久综合| 少妇视频一区二区| 免费人成年激情视频在线观看| 亚洲人精品午夜在线观看| 国产精品丝袜白浆摸在线| 国产v综合v亚洲欧美久久| www视频在线观看| 国产日韩欧美一区在线| zzjj国产精品一区二区| 伊人在线视频观看| 91精品啪在线观看国产| 久久精品一区二区三区不卡牛牛| 久久中文字幕二区| 欧美videosex性欧美黑吊| 制服丝袜亚洲播放| 99视频在线观看一区三区| 色乱码一区二区三在线看| 青娱乐极品盛宴一区二区| 亚洲一区二区三区三州| 久久久不卡影院| 日韩精品在线免费视频| 国产白嫩美女无套久久| 亚洲成人精品电影在线观看| 综合欧美亚洲| 欧美性色综合| 91黄色免费视频| 亚洲欧洲三级电影| 国产女女做受ⅹxx高潮| a毛片在线播放| 高清不卡在线观看av| 三妻四妾的电影电视剧在线观看| 六月丁香综合在线视频| 日本精品视频在线播放| 夜色资源站国产www在线视频| 三级黄色片播放| 成人午夜免费在线观看| 草草浮力影院| 亚洲精品电影网在线观看| 精品无人区无码乱码毛片国产| 亚洲自拍另类综合| 亚洲精品美女在线| 韩国欧美国产一区| 亚洲狠狠婷婷综合久久久久图片| 精品国产一区二区三区在线观看| 日韩视频一区在线观看| 卡通动漫亚洲综合| 美女精品国产| 国产一区二区三区在线观看网站| 欧美日韩亚洲综合一区| 日韩精品视频在线观看免费| 91亚洲视频在线观看| 国产成人精品一区二区三区在线| 婷婷五月综合缴情在线视频| 亚洲午夜电影| 无码人妻精品一区二区三区温州| 欧美日韩尤物久久| 欧美精品一级二级三级| 成人午夜一级二级三级| 久久久久久18| 天天躁日日躁成人字幕aⅴ| 亚洲码国产岛国毛片在线| 久久久久国产精品无码免费看| 尤蜜粉嫩av国产一区二区三区| 一区二区三区视频网| 欧美黄色网页| 国产精品25p| 97夜夜澡人人双人人人喊| 欧美在线观看网址综合| 在线电影国产精品| 国产乱码久久久| 欧美成人久久电影香蕉| 女生裸体视频网站免费观看| 亚洲男人天堂| 毛片无码国产| 精品无人区无码乱码毛片国产| 国产精品丝袜在线| 天天摸在线视频| 日本蜜桃在线观看视频| 国产日韩精品久久久| 在线视频 91| 欧美精品videosex性欧美| 亚洲二区在线视频| 欧美黑人乱大交| 精品中文字幕在线2019| 日韩欧美在线中文字幕| 亚洲国产精品久久久久爰色欲| 久久艹国产精品| 毛片在线网址播放| 97aⅴ精品视频一二三区| 欧美一区二区三区久久精品茉莉花| 久久精品.com| 国内偷自视频区视频综合| 麻豆传媒视频在线| 久久精品视频在线观看榴莲视频| 虎白女粉嫩尤物福利视频| 泷泽萝拉在线播放| 日日躁夜夜躁人人揉av五月天| av中文字幕在线看| 国产精品免费丝袜| 特级黄色录像片| 亚洲av午夜精品一区二区三区| 性欧美视频videos6一9| 亚洲AV无码一区二区三区少妇| 国产精品久久不卡| 国产女主播自拍| 1024国产在线| 疯狂欧洲av久久成人av电影| 国产福利视频一区二区| 日韩a视频在线观看| 中文字幕一区日韩精品欧美| 右手影院亚洲欧美| 成年人免费av| 亚洲乱码日产精品bd在线观看| 久久蜜桃香蕉精品一区二区三区| 成人三级高清视频在线看| 在线免费观看高清视频色| **欧美日韩vr在线| 91精品在线一区二区| 国产精品a级| 久久亚洲国产精品日日av夜夜| 中文字幕有码在线观看| 精品影片在线观看的网站| 国产午夜精品一区二区三区视频| 久久久国产精品一区二区三区| 少妇精品无码一区二区免费视频| 17c丨国产丨精品视频| 在线中文字幕一区二区| 女人天堂av手机在线| 水蜜桃在线视频| 国产字幕视频一区二区| www.日韩精品| 欧美色就是色| 嫩草影院官网| 日韩毛片免费观看| 免费在线观看a视频| 97精品高清一区二区三区| 久久久久久久一区二区三区| 91午夜伦伦电影理论片| 牛牛视频精品一区二区不卡| 五月激情六月综合| 日韩精品一区二区三区视频| 这里只有精品视频| 成人av视屏| 亚洲高清不卡一区| 91精品婷婷国产综合久久蝌蚪| 国产三区二区一区久久| 午夜精品久久久久久久久久久久| 欧美日韩国产区一| 亚洲精品久久久中文字幕| 久久青青草原| julia一区二区三区中文字幕| 成人免费观看在线观看| 久久偷拍免费视频| 国产精一区二区| 成人免费看吃奶视频网站| 国产一级片大全| 欧美区一区二区三区| 成人性教育视频在线观看| 精品9999| 久久青青色综合| 国产在线看一区| 欧美精品色视频| 亚洲欧洲闷骚av少妇影院| 大香一本蕉伊线亚洲网| 亚洲乱码国产乱码精品精的特点| 俺去啦;欧美日韩| 国产视频一区二区不卡| 蜜桃视频在线观看91| 久久久久人妻精品一区三寸| 成人影视在线播放| 欧美午夜精品理论片a级按摩| 日韩福利一区二区| 尤物在线精品视频| 依依成人在线| 国产一卡2卡3卡4卡网站免费| 国产成人福利在线| aa日韩免费精品视频一| 97在线播放视频| 国产精品v片在线观看不卡| 久久久成人的性感天堂| 成人福利小视频| 一区二区在线| 国产成人免费9x9x人网站视频| 超碰国产精品久久国产精品99| 国产偷国产偷亚洲高清人白洁| 久久99国产精品久久久久久久久| 久久久久国产精品| 视频精品一区二区三区| 国产 日韩 欧美 在线| 麻豆精品视频在线观看| 在线免费视频福利| 非洲黑人最猛性xxxx交| 国产亚洲综合av| 在线观看免费黄网站| 欧美国内亚洲| 香蕉视频一区二区| 亚洲精品一区二区三区在线| 激情在线观看视频| 亚洲午夜精品久久久久久久久久久久| 97人澡人人添人人爽欧美| 一个人免费观看日本www视频| 久久一本综合频道| 欧美gayvideo| 黄色av免费在线| 成人av地址| 日产精品久久久一区二区福利| 国产伦精品一区二区三区在线观看| 99av国产精品欲麻豆| 日本性生活一级片| av一级亚洲| 国产高潮在线观看| 人人妻人人藻人人爽欧美一区| 免费男女羞羞的视频网站中文字幕| 俄罗斯精品一区二区三区| 久久久蜜臀国产一区二区| 成人h在线播放| 在线免费看av| 91精品国产高清一区二区三区蜜臀| 99在线小视频| 欧美日韩电影一区二区三区| 精品国产中文字幕第一页| 91精品国自产| 国产精品7m视频| 日韩熟女一区二区| 91精品短视频| 中文av字幕| 亚洲天堂精品在线观看| 中文文字幕一区二区三三| 国产精品99久久久久久人| 黄动漫在线免费观看| 亚洲一区二区四区蜜桃| av高清一区二区| eeuss影院www影院| 亚洲欧美日韩中文播放| 天天噜夜夜操| 丁香网亚洲国际| 精品96久久久久久中文字幕无| 欧美福利视频一区二区| eeuss影院www在线观看| 久久99精品一区二区三区三区| 国产精品一区二区三区视频网站| 欧美一区二区三区网站| 国产麻豆一区二区三区精品视频| 色呦呦在线免费观看| 国产又白又嫩又爽又黄| 色悠久久久久综合网小说| 久久99国产精品免费| 在线视频第一页| 狠狠做深爱婷婷久久综合一区| 一本大道久久a久久精二百| 国产三级国产精品国产专区50| 九九热国产视频| 美女黄色一级视频| 亚洲美女在线看| 美女扒开腿免费视频| 国产在线观看精品一区二区三区| 国产一区二区三区在线观看网站| 91在线免费网站| 久久精品在线视频| 欧美激情福利| 欧美亚洲国产一区二区三区| 亚洲v在线观看| 日本韩国精品一区二区|