色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

mysql 怎么建外鍵

錢諍諍2年前11瀏覽0評論

MySQL是一款流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。在設(shè)計數(shù)據(jù)庫時,有時需要建立表之間的關(guān)系,這時就需要用到外鍵。外鍵可以保證數(shù)據(jù)的完整性和一致性,使得表之間的關(guān)系更加清晰。下面介紹MySQL中如何建立外鍵。

1. 創(chuàng)建主表和從表

CREATE TABLE `tb_department` (
`dept_id` int(11) NOT NULL AUTO_INCREMENT,
`dept_name` varchar(50) DEFAULT NULL,
PRIMARY KEY (`dept_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `tb_employee` (
`emp_id` int(11) NOT NULL AUTO_INCREMENT,
`emp_name` varchar(50) DEFAULT NULL,
`dept_id` int(11) DEFAULT NULL,
PRIMARY KEY (`emp_id`),
KEY `dept_id` (`dept_id`),
CONSTRAINT `tb_employee_ibfk_1` FOREIGN KEY (`dept_id`) REFERENCES `tb_department` (`dept_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

這里創(chuàng)建了兩個表,tb_department作為主表,tb_employee作為從表。tb_department中dept_id為主鍵,tb_employee中dept_id為外鍵,關(guān)聯(lián)到tb_department的dept_id字段上。注意,引擎類型需選擇InnoDB,因為只有InnoDB支持外鍵。

2. 建立外鍵

ALTER TABLE `tb_employee` ADD CONSTRAINT `tb_employee_ibfk_1` FOREIGN KEY (`dept_id`) REFERENCES `tb_department`(`dept_id`);

上面的代碼可以來實現(xiàn)在已有表上添加外鍵約束。名為tb_employee_ibfk_1的約束,關(guān)聯(lián)到tb_department的dept_id字段上。注意,如果已經(jīng)有重名的外鍵約束,此語句執(zhí)行會報錯。

3. 刪除外鍵

ALTER TABLE `tb_employee` DROP FOREIGN KEY `tb_employee_ibfk_1`;

刪除外鍵時,需要指定外鍵的名稱,使用DROP FOREIGN KEY語句即可。這里指定了tb_employee_ibfk_1作為外鍵名稱。

總結(jié):MySQL中建立外鍵需要考慮表之間的關(guān)系,主表和從表的字段要保持一致,必須使用InnoDB引擎,建立外鍵可以使用CREATE TABLE或ALTER TABLE語句,刪除外鍵使用ALTER TABLE語句。