MySQL不允許同名主鍵,這是因為主鍵是用于唯一標識每個行的屬性。
一個表只能有一個主鍵,如果你在相同的表中嘗試創建兩個主鍵,MySQL將會報出“#1068 - Multiple primary key defined”的錯誤信息。
CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(50) NOT NULL, `age` int(11) NOT NULL, `email` varchar(50) NOT NULL, `id` int(11) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
在上面的示例中,一個名為`user`的表被創建了,但我們嘗試在它的列中定義了兩個名為`id`的主鍵。這樣做會導致MySQL報出錯誤。
我們需指出唯一的主鍵才能實現表中記錄的唯一標識。
CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(50) NOT NULL, `age` int(11) NOT NULL, `email` varchar(50) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
此示例中,在`user`表的`id`中定義了唯一的主鍵,因此對于每一行記錄都有唯一的標識。
上一篇css加入字體失敗