我有一个包含以下两列的数据库:
`MainTable`
barcode (PK)
name
然后我有另一张FK的表:
`SubTable`
barcode (FK)
info
如何在确保条形码唯一性的同时,将自动递增主键添加到MainTable字段?基本上,如果没有出现FK错误,我将如何进行以下操作?
alter table maintable drop primary key;
alter table maintable add unique key (barcode);
ALTER TABLE `maintable` ADD `id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY;
答案 0 :(得分:0)
ALTER TABLE mainTable DROP CONSTRAINT Primary_key
ALTER TABLE maintable ADD CONSTRAINT constraint_name UNIQUE (barcode)
ALTER TABLE maintable ADD COLUMN Id INT PRIMARY KEY AUTO_INCREMENT
这会添加你的新主键,然后你需要在子表中添加一个新列作为FK引用新主键,并将旧Fk从子表中删除