0
我們有兩張桌子。一個被稱爲「站」,有幾列;其中之一是「CityCode」。第二個表格稱爲「StationTimezone」,它也有「CityCode」列。 在StationTimezone上,我們定義了一個「CityCode」上的約束 - 它引用「Station」中的「CityCode」。MySQL約束如何失效?
CREATE TABLE `StationTimezone` (
`CityCode` varchar(3) NOT NULL,
`Timezone` varchar(50) NOT NULL COMMENT 'Name of the timezone',
PRIMARY KEY (`CityCode`),
CONSTRAINT `StationTimezone_ibfk_1` FOREIGN KEY (`CityCode`) REFERENCES `Station` (`CityCode`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COMMENT='CityCode to Timezone name mapping';
我們現在看到,StationTimezone已經得到了沒有定義到Station的條目。這意味着,在刪除約束之後,我們不能重建它。 現在我已經有了一個問題,我們怎麼能夠解決這個問題。如何將「CityCode」添加到StationTimezone而不在「Station」中添加相同的「CityCode」?