十年網(wǎng)站開發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營(yíng)維護(hù)+專業(yè)推廣+無(wú)憂售后,網(wǎng)站問(wèn)題一站解決
定義外鍵的方法和詳細(xì)的操作步驟如下:
網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)建站!專注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、小程序定制開發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了吳江免費(fèi)建站歡迎大家使用!
1、第一步,創(chuàng)建一個(gè)主從表,如下圖所示,然后進(jìn)入下一步。
2、其次,完成上述步驟后,選擇主表,然后單擊設(shè)計(jì)表進(jìn)入表設(shè)計(jì)界面,如下圖所示,然后進(jìn)入下一步。
3、接著,完成上述步驟后,單擊外鍵進(jìn)入外鍵的設(shè)置界面,如下圖所示,然后進(jìn)入下一步。
4、然后,完成上述步驟后,設(shè)置外鍵名稱,然后選擇主表的外鍵字段,如下圖所示,然后進(jìn)入下一步。
5、隨后,完成上述步驟后,設(shè)置與數(shù)據(jù)庫(kù),表名稱和從屬表的單詞相對(duì)應(yīng)的外鍵字段,如下圖所示,然后進(jìn)入下一步。
6、最后,完成上述步驟后,單擊保存即可,如下圖所示。這樣,問(wèn)題就解決了。
通過(guò)工具NAVICAT 設(shè)計(jì)表時(shí)進(jìn)行設(shè)計(jì)
打開NAVICAT,連接數(shù)據(jù)庫(kù)
右鍵目標(biāo)表,選擇設(shè)計(jì)表
打開后選擇外鍵菜單,具體如圖:
分別設(shè)置外鍵名,字段,關(guān)聯(lián)數(shù)據(jù)庫(kù)、表、字段,以及刪除時(shí)操作,更新時(shí)操作方式然后點(diǎn)擊保存按鈕即可
也可以通過(guò)SQL方式完成對(duì)表外鍵的添加,如:
語(yǔ)法:alter table 表名 add constraint FK_ID foreign key(你的外鍵字段名) REFERENCES 外表表名(對(duì)應(yīng)的表的主鍵字段名);
為已經(jīng)添加好的數(shù)據(jù)表添加外鍵:
語(yǔ)法:alter table 表名 add constraint FK_ID foreign key(你的外鍵字段名) REFERENCES 外表表名(對(duì)應(yīng)的表的主鍵字段名);
例: alter table tb_active add constraint FK_ID foreign key(user_id) REFERENCES tb_user(id)
//FK_ID是外鍵的名稱
/*
CREATE TABLE `tb_active` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`title` varchar(100) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
`content` text CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
`user_id` int(11) NOT NULL,
PRIMARY KEY (`id`),
KEY `user_id` (`user_id`),
KEY `user_id_2` (`user_id`),
CONSTRAINT `FK_ID` FOREIGN KEY (`user_id`) REFERENCES `tb_user` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
*/
刪除外鍵
語(yǔ)法: ALTER TABLE table-name DROP FOREIGN KEY key-id;
例: ALTER TABLE `tb_active` DROP FOREIGN KEY 'FK_ID'
自動(dòng)鍵更新和刪除:
外鍵可以保證新插入的記錄的完整性,但是,如果在REFERENCES從句中已命名的表刪除記錄會(huì)怎么樣?在使用同樣的值作為外鍵的輔助表中會(huì)發(fā)生什么?
很明顯,那些記錄也應(yīng)該被刪除,否則在數(shù)據(jù)庫(kù)中就會(huì)有很多無(wú)意義的孤立記錄,MYSQL可以通過(guò)向FOREIGN KEY...REFERENCES修飾符添加一個(gè)ON DELETE 或ON UPDATE子句簡(jiǎn)化任務(wù),它告訴了數(shù)據(jù)庫(kù)在這種情況如何處理孤立任務(wù)。
工具/原料
電腦? ?MySQL
方法/步驟
設(shè)置主鍵:
1、通過(guò)終端進(jìn)入到mysql命令行工具。
2、通過(guò)use關(guān)鍵字進(jìn)行到目標(biāo)數(shù)據(jù)庫(kù)里。
3、如原表已有主鍵,先把原來(lái)的主鍵刪除掉,通過(guò)DROP PRIMARY KEY命令:ALTER TABLE `jingyan` DROP PRIMARY KEY;。
4、主鍵已經(jīng)沒(méi)有了。
5、通過(guò)命令:ADD PRIMARY KEY來(lái)添加ALTER TABLE `jingyan` ADD PRIMARY KEY ( `id` ) 。
6、輸入后按下回車鍵即可看到 query ok執(zhí)行成功的字符。
7、回到數(shù)據(jù)庫(kù)的可視化工具,即可顯示現(xiàn)在的表在id列上添加了主鍵了。
設(shè)置外鍵:
1、創(chuàng)建好主從表。
2、選擇主表,點(diǎn)擊設(shè)計(jì)表,進(jìn)入到表設(shè)計(jì)界面。
3、點(diǎn)擊外鍵,進(jìn)入到外鍵設(shè)置界面。
4、先設(shè)置外鍵名稱和選擇主表的外鍵字段。
5、然后在設(shè)置外鍵字段對(duì)應(yīng)從表的數(shù)據(jù)庫(kù)、表名和字。
6、點(diǎn)擊保存就完成外鍵設(shè)置了。
mysql添加外鍵的操作要自己輸?shù)姆椒ㄈ缦拢?/p>
1、在CREATETABLE語(yǔ)句中,通過(guò)FOREIGNKEY關(guān)鍵字來(lái)添加外鍵。
2、在ALTERTABLE語(yǔ)句中,通過(guò)ADD和FOREIGNKEY關(guān)鍵字來(lái)添加外鍵。