【发布时间】:2014-06-28 07:02:02
【问题描述】:
我是 MySQL 的初学者,刚刚开始使用外键和 INNER JOIN 运算符。
所以我制作了一些表格,例如:
CREATE TABLE `models`
(
`id` TINYINT UNSIGNED NOT NULL AUTO_INCREMENT,
`name` VARCHAR (255) NOT NULL,
`price` MEDIUMINT UNSIGNED NOT NULL,
PRIMARY KEY( `id` )
);
CREATE TABLE `vendors`
(
`id` TINYINT UNSIGNED NOT NULL AUTO_INCREMENT,
`name` VARCHAR (255) NOT NULL,
`id_model` TINYINT UNSIGNED NOT NULL,
PRIMARY KEY( `id` ),
FOREIGN KEY (`id_model`) REFERENCES models(`id`)
);
CREATE TABLE `cars`
(
`serial_number` MEDIUMINT UNSIGNED NOT NULL,
`id_vendor` TINYINT UNSIGNED NOT NULL,
FOREIGN KEY (`id_vendor`) REFERENCES vendors(`id`),
PRIMARY KEY( `serial_number` )
);
我知道如何获得输出。但是,问题是我不知道如何正确插入数据。我所能做的就是逐表插入数据。但是如何在一个查询中做到这一点,如果我插入本田思域并且已经有本田雅阁,例如,它不会在数据库中重复本田供应商吗?
【问题讨论】:
标签: mysql sql foreign-keys