查看mysql外鍵方式主要是通過第三方工具或者是sql語句,主要有以下三種方式
創(chuàng)新互聯(lián)公司-云計算及IDC服務(wù)提供商,涵蓋公有云、IDC機房租用、川西大數(shù)據(jù)中心、等保安全、私有云建設(shè)等企業(yè)級互聯(lián)網(wǎng)基礎(chǔ)服務(wù),來電聯(lián)系:13518219792
1、使用Navicateformysql,打開數(shù)據(jù)庫、查看數(shù)據(jù)庫表、查看設(shè)計表、選擇外鍵選項卡,就可以查看外鍵
2、使用sql語句
showcreatetable表名;這個命令可以查看表的所有信息,包括一些字段類型,字段的約束,外鍵,主鍵,索引,字符編碼等等。
3、查看某個表或者某個列的外鍵信息
selectTABLE_NAME,COLUMN_NAME,CONSTRAINT_NAME,
REFERENCED_TABLE_NAME,REFERENCED_COLUMN_NAME from KEY_COLUMN_USAGE where REFERENCED_TABLE_NAME = 'table';
如果需要查看某一列上的外鍵關(guān)系,需要添加列的條件REFERENCED_COLUMN_NAME.xx=xx
方法一比較直觀,方法三比較準(zhǔn)確!
擴展資料:
MySQL是一種開放源代碼的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)(RDBMS),MySQL數(shù)據(jù)庫系統(tǒng)使用最常用的數(shù)據(jù)庫管理語言--結(jié)構(gòu)化查詢語言(SQL)進行數(shù)據(jù)庫管理。
由于MySQL是開放源代碼的,因此任何人都可以在GeneralPublicLicense的許可下下載并根據(jù)個性化的需要對其進行修改。MySQL因為其速度、可靠性和適應(yīng)性而備受關(guān)注。大多數(shù)人都認為在不需要事務(wù)化處理的情況下,MySQL是管理內(nèi)容最好的選擇。
參考資料來源:百度百科——mySQL
定義外鍵的方法和詳細的操作步驟如下:
1、第一步,創(chuàng)建一個主從表,如下圖所示,然后進入下一步。
2、其次,完成上述步驟后,選擇主表,然后單擊設(shè)計表進入表設(shè)計界面,如下圖所示,然后進入下一步。
3、接著,完成上述步驟后,單擊外鍵進入外鍵的設(shè)置界面,如下圖所示,然后進入下一步。
4、然后,完成上述步驟后,設(shè)置外鍵名稱,然后選擇主表的外鍵字段,如下圖所示,然后進入下一步。
5、隨后,完成上述步驟后,設(shè)置與數(shù)據(jù)庫,表名稱和從屬表的單詞相對應(yīng)的外鍵字段,如下圖所示,然后進入下一步。
6、最后,完成上述步驟后,單擊保存即可,如下圖所示。這樣,問題就解決了。
為已經(jīng)添加好的數(shù)據(jù)表添加外鍵:
語法:alter table 表名 add constraint FK_ID foreign key(你的外鍵字段名) REFERENCES 外表表名(對應(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
*/
刪除外鍵
語法: ALTER TABLE table-name DROP FOREIGN KEY key-id;
例: ALTER TABLE `tb_active` DROP FOREIGN KEY 'FK_ID'
自動鍵更新和刪除:
外鍵可以保證新插入的記錄的完整性,但是,如果在REFERENCES從句中已命名的表刪除記錄會怎么樣?在使用同樣的值作為外鍵的輔助表中會發(fā)生什么?
很明顯,那些記錄也應(yīng)該被刪除,否則在數(shù)據(jù)庫中就會有很多無意義的孤立記錄,MYSQL可以通過向FOREIGN KEY...REFERENCES修飾符添加一個ON DELETE 或ON UPDATE子句簡化任務(wù),它告訴了數(shù)據(jù)庫在這種情況如何處理孤立任務(wù)。