如何将一个字段引用到两个表?
在我的表格中,location.location_id
字段必须引用city.id
和country.id
在表location
中,我有location_type
字段,用于确定必须使用哪个父表。
CREATE TABLE `location` (
`id` mediumint UNSIGNED NOT NULL AUTO_INCREMENT,
`location_id` mediumint UNSIGNED NOT NULL,
`location_type` enum('city','country') NOT NULL,
PRIMARY KEY (`id`)
);
CREATE TABLE `city` (
`id` mediumint UNSIGNED NOT NULL AUTO_INCREMENT,
`name` varchar(64) NOT NULL,
PRIMARY KEY (`id`)
);
CREATE TABLE `country` (
`id` mediumint UNSIGNED NOT NULL AUTO_INCREMENT,
`name` varchar(64) NOT NULL,
PRIMARY KEY (`id`)
);
这个参考是否有任何模型,我可能需要特殊的引用表吗?