精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

MySQL數據庫外鍵的相關知識詳解

數據庫 MySQL
本文我們以一個具體的例子來介紹了MySQL數據庫外鍵的相關知識,以及使用外鍵時的一些相關的注意事項,希望能夠對您有所幫助。

MySQL數據庫外鍵的相關知識是本文我們主要要介紹的內容,接下來我們通過一個具體的例子來逐步介紹這些設置。假如某個電腦生產商,它的數據庫中保存著整機和配件的產品信息。用來保存整機產品信息的表叫做pc;用來保存配件供貨信息的表叫做parts。

在pc表中有一個字段,用來描述這款電腦所使用的CPU型號;在parts表中相應有一個字段,描述的正是CPU的型號,我們可以把它想成是全部CPU的型號列表。很顯然,這個廠家生產的電腦,其使用的CPU一定是供貨信息表(parts)中存在的型號。這時,兩個表中就存在一種約束關系(constraint)——pc表中的CPU型號受到parts表中型號的約束。

首先我們來創建parts表:

CREATE TABLE parts ( ... 字段定義 ..., model VARCHAR(20) NOT NULL, ... 字段定義 ... );

接下來是PC表:

CREATE TABLE pc ( ... 字段定義 ..., cpumodel VARCHAR(20) NOT NULL, ... 字段定義 ... };

設置索引

若要設置外鍵,在參照表 (referencing table,即pc表) 和被參照表(referenced table,即parts表)中,相對應的兩個字段必須都設置索引(index)。

對parts表:

ALTER TABLE parts ADD INDEX idx_model (model);

這句話的意思是,為parts表增加一個索引,索引建立在model字段上,給這個索引起個名字叫idx_model。

對pc表也類似:

ALTER TABLE pc ADD INDEX idx_cpumodel (cpumodel);

事實上這兩個索引可以在創建表的時候就設置。這里只是為了突出其必要性。

定義外鍵

下面為兩張表之間建立前面所述的那種“約束”。因為pc的CPU型號必須參照parts表中的相應型號,所以我們將pc表的cpumodel字段設置為“外鍵”(FOREIGN KEY),即這個鍵的參照值來自于其他表。

ALTER TABLE pc ADD CONSTRAINT fk_cpu_model  FOREIGN KEY (cpumodel)  REFERENCES parts(model);

第一行是說要為pc表設置外鍵,給這個外鍵起一個名字叫做fk_cpu_model;第二行是說將本表的cpumodel字段設置為外鍵;第三行是說這個外鍵受到的約束來自于parts表的model字段。

這樣,我們的外鍵就搞好了!如果我們試著CREATE一臺pc,它所使用的CPU的型號是parts 表中不存在的,那么MySQL會禁止這臺PC被CREATE出來。

級聯操作

考慮以下這種情況:

技術人員發現,一個月之前輸入到parts表中的某個系列的cpu(可能有很多款)的型號全都輸錯了一個字母,現在需要改正。我們希望的是,當parts表中那些 Referenced Column 有所變化時,相應表中的 Referencing Column 也能自動更正。

可以在定義外鍵的時候,在最后加入這樣的關鍵字:ON UPDATE CASCADE;即在主表更新時,子表(們)產生連鎖更新動作,似乎有些人喜歡把這個叫“級聯”操作。

如果把這語句完整的寫出來,就是:

ALTER TABLE pc ADD CONSTRAINT fk_cpu_model  FOREIGN KEY (cpumodel)  REFERENCES parts(model) ON UPDATE CASCADE;

除了CASCADE外,還有RESTRICT(禁止主表變更)、SET NULL

補充說明:

如果需要在主表刪除記錄時,當子表有對應記錄則不允許刪除,就加上 ON delete restrict 。完整案例如下:

兩個表,國家和城市,城市中的country_id是外鍵。

 

  1. Create table country(  
  2. country_id smallint unsigned not null auto_increment,  
  3. country varchar(50) not null,  
  4. last_update timestamp not null,  
  5. primary key(country_id)  
  6. )engine=innoDB default charset=utf8;  
  7. Create table city(  
  8. city_id smallint unsigned not null auto_increment,  
  9. city varchar(50) not null,  
  10. country_id smallint unsigned not null,  
  11. last_update timestamp not null default current_timestamp on update curren_timestamp,  
  12. Primary key(city_id),  
  13. key idx_fk_country_id (country_id),  
  14. constraint fk_city_country Foreign Key(country_id) References country(country_id) on DELETE restrict ON update cascade  
  15. )engine=innoDB default charset=utf8

 

刪除外鍵

刪除外鍵定義

定義外鍵的時候articles.member_id外鍵比articles.category_id子句多了一個CONSTRAINT fk_member ?

這個fk_member就是用來刪除外鍵定義用的,如下所示:

  1. mysql> ALTER TABLE articles DROP FOREIGN KEY fk_member;  
  2. Query OK, 1 row affected (0.25 sec)  
  3. Records: 1 Duplicates: 0 Warnings: 0 

 

這樣articles.member_id外鍵定義就被刪除了,但是如果定義時沒有指定CONSTRAINT fk_symbol (即外鍵符號)時該怎么刪除呢?別急,沒有指定時,MySQL會自己創建一個,可以通過以下命令查看:

  1. mysql> SHOW CREATE TABLE articles;  
  2. +———-+————————————+  
  3. | Table    | Create Table                       |  
  4. +———-+————————————+  
  5. | articles | CREATE TABLE `articles` (  
  6. `article_id` int(11) unsigned NOT NULL auto_increment,  
  7. `category_id` tinyint(3) unsigned NOT NULL,  
  8. `member_id` int(11) unsigned NOT NULL,  
  9. `title` varchar(255) NOT NULL,  
  10. PRIMARY KEY (`article_id`),  
  11. KEY `category_id` (`category_id`),  
  12. KEY `member_id` (`member_id`),  
  13. CONSTRAINT `articles_ibfk_1` FOREIGN KEY (`category_id`) REFERENCES `categories` (`id`)  
  14. ENGINE=InnoDB DEFAULT CHARSET=latin1          |  
  15. +———-+————————————+  
  16. 1 row in set (0.01 sec) 

 

可以看出articles.category_id的外鍵符號為articles_ibfk_1,因為就可以執行以下命令刪除外鍵定義:

  1. mysql> ALTER TABLE articles DROP FOREIGN KEY articles_ibfk_1;  
  2. Query OK, 1 row affected (0.66 sec)  
  3. Records: 1 Duplicates: 0 Warnings: 0 

 

關于MySQL數據庫外鍵的相關知識就介紹到這里了,希望本次的介紹能夠對您有所收獲!

【編輯推薦】

  1. MySQL數據庫時間類型的物理存儲
  2. 如何檢查MySQL數據庫的主從延時?
  3. MySQL數據庫創建線程的相關操作詳解
  4. MySQL數據庫mysqlcheck的使用方法詳解
  5. MySQL數據庫丟失root密碼后該如何補救?
責任編輯:趙鵬 來源: CSDN博客
相關推薦

2019-11-05 08:20:13

MySQL數據庫外鍵

2010-01-05 09:24:42

MySQL外鍵約束

2011-08-18 17:05:16

Oracle數據庫的服

2010-10-09 09:55:41

MySQL外鍵

2010-10-09 10:29:29

MySQL外鍵

2011-08-01 16:31:29

MySQL數據庫外鍵

2011-08-03 17:43:53

MySQL數據庫外鍵約束

2010-11-22 09:59:32

MySQL外鍵設置

2010-05-17 16:10:39

MySQL數據庫

2011-08-30 13:40:28

MySQL線程

2021-07-01 06:19:46

Redis數據庫API

2021-02-06 23:03:58

SQLServer數據庫變量

2011-09-02 10:37:15

Oraclesqlload用法

2011-08-30 14:25:06

QT數據庫

2010-05-11 19:11:13

MySQL外鍵

2021-03-19 07:12:23

SQL Server數據庫數據庫收縮

2021-03-24 14:50:00

SQLServer數據庫字符串

2020-06-09 09:19:14

數據庫

2011-08-04 15:20:52

SQL Server數據庫鏡像

2010-03-01 16:31:59

Linux SNMP
點贊
收藏

51CTO技術棧公眾號

国产主播一区二区三区| 宇都宫紫苑在线播放| 精品免费久久久| 国产欧美日韩一区二区三区在线| 亚洲经典中文字幕| 亚洲色图久久久| 羞羞电影在线观看www| 99re亚洲国产精品| 国产日韩欧美在线播放| 国产亚洲精久久久久久无码77777| 私拍精品福利视频在线一区| 欧美三级乱人伦电影| 国产91沈先生在线播放| 国产最新视频在线观看| 国产一区二区三区在线观看免费 | 制服丝袜av成人在线看| www.av91| 天堂中文а√在线| 91在线国产观看| 91久久久久久久久久久| 男人日女人网站| 欧美 日韩 国产 一区| 亚洲日韩中文字幕在线播放| 91亚洲一线产区二线产区| 欧亚一区二区| 午夜精品一区在线观看| 中国成人在线视频| 蜜桃视频在线免费| www.久久精品| 亚洲一区美女视频在线观看免费| 中文字幕在线播| 亚洲国产黄色| 欧美日韩福利电影| 一起操在线播放| 日韩精品1区| 日韩精品在线观看视频| 亚洲欧美综合视频| 精品国产亚洲一区二区在线观看| 日本高清不卡一区| 中国丰满人妻videoshd| 亚洲图区一区| 亚洲免费毛片网站| 亚洲欧美国产精品桃花| 精品三级久久久久久久电影聊斋| av中文字幕不卡| 国产精品二区二区三区| www.色亚洲| 国产一区二区电影| 91精品免费久久久久久久久| 欧美激情一区二区三区免费观看 | 91视频这里只有精品| 澳门av一区二区三区| 欧美午夜精品在线| 国产超级av在线| 不卡福利视频| 日韩欧美亚洲范冰冰与中字| 日本在线xxx| 超碰在线视屏| 欧美日韩亚洲成人| 成年人观看网站| 免费电影日韩网站| 日韩欧美在线字幕| 日韩一级理论片| 欧美日韩精品免费观看视欧美高清免费大片| 日韩欧美第一页| 日本男人操女人| 免费一区二区三区四区| 欧美日本韩国一区| 欧美熟妇另类久久久久久多毛| 玖玖玖电影综合影院| 欧美成人精品1314www| 国产精品熟妇一区二区三区四区 | 麻豆国产精品777777在线| 国产精品久久二区| 国产又大又黑又粗| 国产99久久久精品| 欧美不卡福利| 日韩子在线观看| 亚洲精品乱码久久久久久黑人| 欧美高清视频在线| 国产真人真事毛片| 深爱激情综合网| 最近中文字幕2019免费| 暗呦丨小u女国产精品| 欧美激情偷拍| 青青草99啪国产免费| 久草热在线观看| 国产伦精品一区二区三区免费 | 黄色一级二级三级| 四虎地址8848精品| 精品国产91亚洲一区二区三区婷婷| 午夜免费福利影院| 成久久久网站| 欧美日韩第一视频| 91视频久久久| 国产成人一区在线| 免费日韩电影在线观看| 黄色的网站在线观看| 欧美日韩日本国产| 污污视频在线免费| 免费精品国产的网站免费观看| 视频在线一区二区| 日韩三级av在线| 久久成人久久爱| 精品久久久久久一区二区里番| 日本在线看片免费人成视1000| 亚洲国产精品久久久久婷婷884| 日本成人黄色网| 成人资源在线| 久久精品免费播放| 中文字幕精品视频在线观看| 国产美女精品人人做人人爽| 欧美精品欧美精品系列c| 黄色国产网站在线播放| 在线观看日韩高清av| 中文字幕18页| 小说区亚洲自拍另类图片专区| 欧美亚洲国产视频| 国产黄色大片网站| 欧美极品美女视频| 日本少妇高潮喷水视频| 亚州精品国产| 国产一区二区美女视频| 日本三级理论片| 国产精品888| 亚洲欧美日韩不卡一区二区三区| 依依综合在线| 亚洲成年人在线播放| 欧美精品久久久久久久久46p| 三级亚洲高清视频| 欧美成人综合一区| 国产社区精品视频| 欧美va亚洲va在线观看蝴蝶网| 中文字幕求饶的少妇| 可以免费看不卡的av网站| 久久av一区二区| 岛国av在线播放| 精品免费国产一区二区三区四区| 中国毛片直接看| 精品一区二区三区在线播放 | 国产一区久久| 999国内精品视频在线| 成人在线影视| 777亚洲妇女| 免费精品在线视频| 久久激情五月婷婷| 一区二区三区av| 日韩一级特黄| 日韩有码视频在线| 91成人国产综合久久精品| 国产精品毛片久久久久久久| 日本888xxxx| 日韩欧美字幕| 成人免费视频97| 黄色网页在线观看| 日韩欧美的一区| 久久高清无码视频| 91在线丨porny丨国产| 国产亚洲天堂网| 国产精品嫩草影院在线看| 国产精品黄色av| 日韩精品毛片| 日韩欧美亚洲另类制服综合在线| 超碰手机在线观看| 菠萝蜜视频在线观看一区| 精品少妇人妻av免费久久洗澡| 日韩av午夜| 国产经典一区二区| а√天堂资源地址在线下载| 精品久久久久久最新网址| 中文字幕一区二区三区精品| 久久一区二区三区四区| 欧美一级特黄a| 性欧美欧美巨大69| 国产精品大全| 亚洲www啪成人一区二区| 久久精品视频在线观看| 免费观看国产视频| 久久精品视频在线看| 一级黄色香蕉视频| 综合激情一区| 加勒比在线一区二区三区观看| 欧美特大特白屁股xxxx| 日韩在线视频国产| 国精品人妻无码一区二区三区喝尿| 欧美日韩一区二区免费视频| 老头老太做爰xxx视频| 国产做a爰片久久毛片| 水蜜桃色314在线观看| 精品午夜久久| av蓝导航精品导航| 韩漫成人漫画| 成年无码av片在线| 青青草手机在线| 91精品国产欧美一区二区| 中文字幕一区二区三区精品 | 亚洲一区二区三区免费观看| 国产精品18| 日本午夜精品理论片a级appf发布| 国产在线一区二区视频| 亚洲欧洲国产一区| 草草视频在线播放| 在线观看91视频| 一级片免费网址| 亚洲人妖av一区二区| 真人bbbbbbbbb毛片| 极品尤物av久久免费看| 欧美日韩在线中文| 欧美色图首页| 中文字幕日韩一区二区三区| 亚洲国产合集| 成人在线视频电影| 亚洲一区av| 国产成人精品日本亚洲| 国产激情在线播放| 欧美日产国产成人免费图片| 国产人成在线观看| 日韩成人免费视频| 亚洲精品字幕在线观看| 7777精品伊人久久久大香线蕉超级流畅 | 亚洲午夜久久久久| 精品人妻伦九区久久aaa片| 久久这里只有精品视频网| 精人妻一区二区三区| 国产在线视视频有精品| 欧美特级aaa| 日产欧产美韩系列久久99| 欧美亚洲国产成人| 在线观看视频日韩| 一二三四中文字幕| 亚洲有吗中文字幕| 永久免费精品视频网站| 欧美中文一区二区| 日韩不卡av| 国产a久久精品一区二区三区| 黄色91av| 欧美爱爱网站| 久久国产精品久久| 久久男人av| 精品一区二区三区日本| 国产精品视屏| 精品国产乱码久久久久久蜜柚 | 国产精品白丝jk黑袜喷水| 日韩va在线观看| 久久精品国产一区二区| www.涩涩涩| 麻豆精品在线播放| 三级一区二区三区| 国产乱码一区二区三区| 精品人妻一区二区三区免费| 国产精品一区专区| 日本中文字幕精品| 不卡一区二区三区四区| 日批在线观看视频| 久久一区二区三区四区| 亚洲av熟女国产一区二区性色| 国产视频亚洲色图| 欧美日韩国产一二三区| 中文字幕中文字幕在线一区| 女人18毛片毛片毛片毛片区二| 亚洲视频在线一区二区| www.xxxx日本| 精品美女久久久久久免费| 四虎成人在线观看| 在线亚洲+欧美+日本专区| 羞羞色院91蜜桃| 欧美一区二区在线观看| 亚洲精品久久久狠狠狠爱| 亚洲国产欧美久久| 第一福利在线| 欧美成人剧情片在线观看| a'aaa级片在线观看| 日韩美女视频中文字幕| 羞羞视频在线观看一区二区| av在线不卡观看| 一个色免费成人影院| 一区二区三区欧美在线| 国内精品久久久久久久97牛牛 | а√在线天堂官网| 国产成人激情小视频| 91精品网站在线观看| 国产精品久久久久久久久久久久午夜片| 久久影视三级福利片| 日韩av不卡播放| 欧美在线网址| 精品人妻一区二区三区四区在线| 免费欧美日韩国产三级电影| 亚洲丝袜在线观看| 国产人妖乱国产精品人妖| 东方av正在进入| 一本色道久久综合亚洲精品按摩| 国产精品无码白浆高潮| 日韩av影视综合网| a篇片在线观看网站| 日韩美女免费视频| 亚洲亚洲一区二区三区| 日韩欧美精品在线不卡| 国产一区日韩欧美| 杨幂毛片午夜性生毛片| 不卡免费追剧大全电视剧网站| 中文字幕黄色网址| 亚洲国产成人av网| 91麻豆成人精品国产免费网站| 亚洲国产精品人久久电影| 久久日韩视频| 国产精品jvid在线观看蜜臀 | 精品国产一二三| 97在线观看免费观看高清| 性色av一区二区咪爱| 91精品视频一区二区| 日本在线观看一区| 99成人精品| 成人在线观看一区二区| 中文字幕视频一区| 天堂网免费视频| 精品国产乱码久久久久久影片| 午夜在线视频播放| 国产91在线高潮白浆在线观看 | 亚洲激情中文字幕| 国产精品va在线观看视色| 国产精品久久久久久亚洲影视 | 亚洲电影一二三区| 国产美女一区| 一区二区免费在线观看视频| 亚洲精品国产一区二区三区四区在线 | 91传媒视频在线观看| 日韩电影免费网站| 国产xxxxx视频| 26uuu欧美| 天天操天天干视频| 亚洲精品不卡在线| 国产啊啊啊视频在线观看| 亚洲最大的免费| 一本精品一区二区三区| 成人亚洲免费视频| 国产精品久久福利| 91九色蝌蚪91por成人| 一区二区三区视频免费| 中文字幕av一区二区三区佐山爱| 精品伦精品一区二区三区视频| 亚洲成色精品| 国产精品扒开腿做爽爽爽a片唱戏| 亚洲最大的成人av| 亚洲第一色网站| 国模极品一区二区三区| 精品国产一区二区三区不卡蜜臂 | 极品色av影院| 欧美久久久久久久久久| 国产精品久久麻豆| 91免费在线观看网站| 今天的高清视频免费播放成人| 不许穿内裤随时挨c调教h苏绵| 亚洲综合一区二区| 欧美一级在线免费观看| 91成人免费观看网站| 九九色在线视频| 亚洲一区中文字幕| 国产精品激情| av鲁丝一区鲁丝二区鲁丝三区| 精品毛片网大全| 成人精品一区二区三区校园激情| 国产精品久久久久久久久久新婚| 日韩国产综合| 在线免费黄色小视频| 亚洲成人av资源| 国产午夜精品一区理论片| 国产精品一区二区久久久久| 亚洲天天影视网| 亚洲一区二区三区四区av| 天天影视网天天综合色在线播放| 欧美扣逼视频| 国产中文欧美精品| 黑丝一区二区| 88久久精品无码一区二区毛片| 欧美午夜免费电影| 91香蕉在线观看| 精品欧美一区二区久久久伦| 日本欧美一区二区在线观看| 精品无码久久久久成人漫画| 亚洲精品aⅴ中文字幕乱码| 欧美与亚洲与日本直播| 视色,视色影院,视色影库,视色网| 成人综合激情网| 亚洲天堂视频在线| 欧美极品少妇xxxxx| 清纯唯美综合亚洲| 人妻av一区二区三区| 色狠狠桃花综合| 黄色羞羞视频在线观看| 日韩精品在在线一区二区中文| 国产一区二区三区日韩| 69国产精品视频免费观看| 久久久久www| 欧美精美视频| 免费在线观看日韩av| 在线免费亚洲电影| 91超碰在线免费| 蜜臀在线免费观看| 国产区在线观看成人精品| 性一交一乱一伧老太|