MySQL是一種常用的數(shù)據(jù)庫(kù)管理系統(tǒng)。在創(chuàng)建數(shù)據(jù)庫(kù)表時(shí),為了確保表中數(shù)據(jù)的正確性和完整性,我們通常會(huì)使用外鍵來(lái)約束數(shù)據(jù)。
MySQL使用FOREIGN KEY關(guān)鍵字來(lái)定義外鍵。下面是一個(gè)簡(jiǎn)單的示例:
CREATE TABLE `cities` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`name` VARCHAR(50) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB;
CREATE TABLE `customers` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`name` VARCHAR(50) NOT NULL,
`city_id` INT(11) NOT NULL,
PRIMARY KEY (`id`),
FOREIGN KEY (`city_id`) REFERENCES `cities`(`id`) ON UPDATE CASCADE ON DELETE RESTRICT
) ENGINE=InnoDB;
在這個(gè)示例中,我們定義了兩個(gè)表,cities和customers。customers表中的city_id字段引用了cities表中的id字段,這就是一個(gè)外鍵。我們使用FOREIGN KEY關(guān)鍵字來(lái)定義這個(gè)外鍵,后面緊跟著要引用的字段名和要引用的表的名字。
建議在使用外鍵之前仔細(xì)考慮好數(shù)據(jù)庫(kù)表結(jié)構(gòu)的設(shè)計(jì),以確保數(shù)據(jù)的完整性和正確性。