我得到了調整一個非常古老的MySQL數據庫以在另一個程序中使用其數據的任務,並且我發現了一些具有這種結構的非常大的表(成千上萬行):在MySQL中重複唯一索引的原因
CREATE TABLE `foo` (
`Id` int(11) NOT NULL AUTO_INCREMENT,
`Name` varchar(200) NOT NULL,
PRIMARY KEY (`Id`),
UNIQUE KEY `foo_Name_Idx` (`Name`),
UNIQUE KEY `Name` (`Name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
這些顯然重複的唯一索引是什麼原因?演出內容嗎?自動創建表錯誤?
也許數據庫設計者,是不是在數據庫設計那麼好,或者該列名與另一個表具有FK關係,作爲結尾'_Idx',通常在創建FK時由mysql生成。無論如何,這沒有合理的解釋,但可能是一個簡單的錯誤。 –