婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 詳解MySQL 外鍵約束

詳解MySQL 外鍵約束

熱門標簽:新鄉智能外呼系統好處 地圖標注客戶付款 咸陽防封電銷卡 申請400電話電話價格 石家莊400電話辦理公司 臨沂做地圖標注 許昌外呼增值業務線路 廣東400企業電話申請流程 宜賓全自動外呼系統廠家

官方文檔:
https://dev.mysql.com/doc/refman/5.7/en/create-table-foreign-keys.html

1.外鍵作用:

MySQL通過外鍵約束來保證表與表之間的數據的完整性和準確性。

2.外鍵的使用條件

  • 兩個表必須是InnoDB表,MyISAM表暫時不支持外鍵(據說以后的版本有可能支持,但至少目前不支持)
  • 外鍵列必須建立了索引,MySQL 4.1.2以后的版本在建立外鍵時會自動創建索引,但如果在較早的版本則需要顯示建立;
  • 外鍵關系的兩個表的列必須是數據類型相似,也就是可以相互轉換類型的列,比如int和tinyint可以,而int和char則不可以。

3.創建語法

[CONSTRAINT [symbol]] FOREIGN KEY
    [index_name] (col_name, ...)
    REFERENCES tbl_name (col_name,...)
    [ON DELETE reference_option]
    [ON UPDATE reference_option]

reference_option:
    RESTRICT | CASCADE | SET NULL | NO ACTION | SET DEFAULT

該語法可以在 CREATE TABLE 和 ALTER TABLE 時使用,如果不指定CONSTRAINT symbol,MYSQL會自動生成一個名字。
ON DELETE、ON UPDATE表示事件觸發限制,可設參數:
RESTRICT(限制外表中的外鍵改動)
CASCADE(跟隨外鍵改動)
SET NULL(設空值)
SET DEFAULT(設默認值)
NO ACTION(無動作,默認的)

CASCADE:表示父表在進行更新和刪除時,更新和刪除子表相對應的記錄
RESTRICT和NO ACTION:限制在子表有關聯記錄的情況下,父表不能單獨進行刪除和更新操作
SET NULL:表示父表進行更新和刪除的時候,子表的對應字段被設為NULL

4.案例演示

以CASCADE(級聯)約束方式

1. 創建勢力表(父表)country
create table country (
id int not null,
name varchar(30),
primary key(id)
);

2. 插入記錄
insert into country values(1,'西歐');
insert into country values(2,'瑪雅');
insert into country values(3,'西西里');

3. 創建兵種表(子表)并建立約束關系
create table solider(
id int not null,
name varchar(30),
country_id int,
primary key(id),
foreign key(country_id) references country(id) on delete cascade on update cascade,
);

4. 參照完整性測試
insert into solider values(1,'西歐見習步兵',1);
#插入成功
insert into solider values(2,'瑪雅短矛兵',2);
#插入成功
insert into solider values(3,'西西里諾曼騎士',3)
#插入成功
insert into solider values(4,'法蘭西劍士',4);
#插入失敗,因為country表中不存在id為4的勢力

5. 約束方式測試

insert into solider values(4,'瑪雅猛虎勇士',2);
#成功插入
delete from country where id=2;
#會導致solider表中id為2和4的記錄同時被刪除,因為父表中都不存在這個勢力了,那么相對應的兵種自然也就消失了
update country set id=8 where id=1;
#導致solider表中country_id為1的所有記錄同時也會被修改為8

以SET NULL約束方式

1. 創建兵種表(子表)并建立約束關系

drop table if exists solider;
create table solider(
id int not null,
name varchar(30),
country_id int,
primary key(id),
foreign key(country_id) references country(id) on delete set null on update set null,
);

2. 參照完整性測試

insert into solider values(1,'西歐見習步兵',1);
#插入成功
insert into solider values(2,'瑪雅短矛兵',2);
#插入成功
insert into solider values(3,'西西里諾曼騎士',3)
#插入成功
insert into solider values(4,'法蘭西劍士',4);
#插入失敗,因為country表中不存在id為4的勢力

3. 約束方式測試

insert into solider values(4,'西西里弓箭手',3);
#成功插入
delete from country where id=3;
#會導致solider表中id為3和4的記錄被設為NULL
update country set id=8 where id=1;
#導致solider表中country_id為1的所有記錄被設為NULL

以NO ACTION 或 RESTRICT方式 (默認)

1. 創建兵種表(子表)并建立約束關系

drop table if exists solider;
create table solider(
id int not null,
name varchar(30),
country_id int,
primary key(id),
foreign key(country_id) references country(id) on delete RESTRICT on update RESTRICT,
);

2. 參照完整性測試

insert into solider values(1,'西歐見習步兵',1);
#插入成功
insert into solider values(2,'瑪雅短矛兵',2);
#插入成功
insert into solider values(3,'西西里諾曼騎士',3)
#插入成功
insert into solider values(4,'法蘭西劍士',4);
#插入失敗,因為country表中不存在id為4的勢力

3. 約束方式測試

insert into solider values(4,'西歐騎士',1);
#成功插入
delete from country where id=1;
#發生錯誤,子表中有關聯記錄,因此父表中不可刪除相對應記錄,即兵種表還有屬于西歐的兵種,因此不可單獨刪除父表中的西歐勢力
update country set id=8 where id=1;
#錯誤,子表中有相關記錄,因此父表中無法修改

以上就是詳解MySQL 外鍵約束的詳細內容,更多關于MySQL 外鍵約束的資料請關注腳本之家其它相關文章!

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

標簽:北京 鷹潭 鎮江 貴州 臺灣 日照 合肥 阜新

巨人網絡通訊聲明:本文標題《詳解MySQL 外鍵約束》,本文關鍵詞  詳解,MySQL,外鍵,約束,詳解,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《詳解MySQL 外鍵約束》相關的同類信息!
  • 本頁收集關于詳解MySQL 外鍵約束的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    亚洲欧美日韩国产综合在线 | 日韩av一区二区三区| 国产精品久久久久久久久晋中 | 欧美日韩激情在线| 欧美在线影院一区二区| 欧美在线观看视频一区二区 | 国产精品18久久久久久久久| 九一九一国产精品| 国内精品久久久久影院色| 国产精品一区二区久久不卡| 国产精品911| 成人app在线观看| 97精品久久久午夜一区二区三区| 91丨九色porny丨蝌蚪| 91免费版在线| 欧美酷刑日本凌虐凌虐| 精品久久久网站| 久久奇米777| 综合激情成人伊人| 午夜国产精品一区| 黄色日韩网站视频| av成人动漫在线观看| 欧美亚洲高清一区二区三区不卡| 精品视频一区二区不卡| 日韩欧美一区二区视频| 久久九九久久九九| 亚洲精品一二三四区| 日韩电影在线一区二区三区| 国产呦精品一区二区三区网站| 国产精品 日产精品 欧美精品| 色婷婷av久久久久久久| 精品国产乱码久久久久久久| 亚洲色图清纯唯美| 久久99热国产| 欧美主播一区二区三区| 精品国产免费一区二区三区香蕉| 国产精品久久久久一区二区三区| 天堂av在线一区| 成人免费看的视频| 欧美一区二区在线看| 亚洲色图色小说| 国产一区二区三区日韩| 欧美午夜精品理论片a级按摩| 国产亚洲女人久久久久毛片| 午夜精品福利一区二区蜜股av| 国产一区二区视频在线播放| 91国偷自产一区二区三区成为亚洲经典| 91精品国产综合久久精品图片| 国产精品国产三级国产aⅴ无密码| 日韩电影免费在线看| 色哟哟一区二区| 国产欧美一区二区精品婷婷| 日韩电影免费一区| 欧美视频一二三区| 亚洲精品写真福利| 成人免费视频一区二区| 久久久久久久久久美女| 免费久久精品视频| 欧美色图在线观看| 一区二区在线免费| 色综合天天综合网国产成人综合天 | 精品电影一区二区| 热久久国产精品| 欧美剧在线免费观看网站| 欧美精品久久一区二区三区| 一区二区三区美女| 色综合久久88色综合天天| 国产精品拍天天在线| 国产精品综合av一区二区国产馆| 91精品国产综合久久香蕉的特点 | 国产一区在线观看麻豆| 欧美成人a在线| 日本欧美在线看| 欧美视频第二页| 亚洲午夜日本在线观看| 欧洲一区在线观看| 亚洲一区二区三区四区在线 | 成人午夜视频网站| 中文字幕永久在线不卡| 色天天综合色天天久久| 亚洲一区二区三区免费视频| 欧美日韩亚洲另类| 麻豆久久久久久| 久久久精品免费免费| 国产精品1024久久| 亚洲欧美日韩精品久久久久| 91久久精品午夜一区二区| 亚洲一区在线免费观看| 欧美天天综合网| 老司机午夜精品| 欧美国产欧美综合| 欧美主播一区二区三区| 日韩电影免费在线观看网站| 精品国产一区二区三区久久久蜜月 | 蜜桃av一区二区| 精品国产麻豆免费人成网站| 国产精品亚洲一区二区三区妖精 | 日本韩国精品在线| 亚洲3atv精品一区二区三区| 日韩精品一区二区三区在线播放| 国产精品亚洲一区二区三区妖精| 国产欧美日韩精品一区| 在线看一区二区| 久久www免费人成看片高清| 国产精品久久久久影院老司| 欧美少妇一区二区| 国产成a人亚洲精| 亚洲午夜激情av| 欧美精品一区二| 色噜噜久久综合| 蜜桃视频在线观看一区| 国产精品少妇自拍| 欧美精品国产精品| 99久久精品国产一区| 日本91福利区| 夜夜精品视频一区二区| 日韩欧美不卡一区| 日本韩国视频一区二区| 国产一区二区三区观看| 香港成人在线视频| 亚洲欧洲精品天堂一级 | 亚洲综合网站在线观看| 久久亚洲一区二区三区明星换脸| 在线免费视频一区二区| 国产成人av自拍| 免费成人性网站| 伊人夜夜躁av伊人久久| 欧美国产禁国产网站cc| 欧美美女视频在线观看| 色悠悠亚洲一区二区| 高清免费成人av| 久久国产剧场电影| 视频在线在亚洲| 亚洲一区av在线| 国产精品日日摸夜夜摸av| 欧美精品一区二区久久婷婷| 欧美一区二区三区播放老司机| 91九色02白丝porn| 91视视频在线直接观看在线看网页在线看| 免费观看一级欧美片| 午夜亚洲福利老司机| 亚洲综合成人在线| ●精品国产综合乱码久久久久| 久久久亚洲高清| 亚洲精品在线免费播放| 日韩手机在线导航| 欧美一区二区啪啪| 欧美一区三区四区| 欧美大片一区二区| 久久夜色精品一区| 2020国产精品自拍| 精品国产99国产精品| 欧美电影免费观看高清完整版| 日韩精品一区二区三区中文精品| 欧美一区二区三区在线观看视频| 3atv在线一区二区三区| 精品视频资源站| 欧美一区二区高清| 精品日韩一区二区三区免费视频| 日韩一级欧美一级| 久久综合中文字幕| 国产精品污网站| 亚洲一级电影视频| 亚洲a一区二区| 精彩视频一区二区三区| 国产一区欧美日韩| aaa亚洲精品| 欧美日韩激情在线| 2014亚洲片线观看视频免费| 中文字幕一区在线观看视频| 亚洲一区二区三区爽爽爽爽爽| 日韩中文字幕亚洲一区二区va在线 | 亚洲第一电影网| 久久99国产精品麻豆| 国产91清纯白嫩初高中在线观看 | 五月激情综合色| 国内不卡的二区三区中文字幕| 福利一区二区在线| 欧洲一区二区三区在线| 337p日本欧洲亚洲大胆精品 | 亚洲福利一二三区| 久久99九九99精品| 91浏览器打开| 精品国产精品网麻豆系列| 1区2区3区欧美| 久久国产尿小便嘘嘘尿| 99r精品视频| 精品国产一区二区在线观看| 亚洲私人黄色宅男| 美女免费视频一区二区| 99视频有精品| 精品欧美一区二区三区精品久久| 亚洲欧美一区二区不卡| 国产美女娇喘av呻吟久久| 欧美日韩视频一区二区| 欧美韩国日本不卡| 看片的网站亚洲| 欧美亚洲自拍偷拍| 国产精品全国免费观看高清| 精品一区二区三区免费|