我尝试“改变表格”我需要一个AI字段,而不是键...“列表”
ID INT(11):PK Not Null AutoIn..
Name VARCHAR
UserID INT(11):FK Not Null
edit BOOL
现在我还需要一个字段“sortpos”作为AI。我尝试使用MySQL Workbench
ALTER TABLE `**mydb**`.`List`
ADD COLUMN `sortpos` INT(11) NOT NULL AUTO_INCREMENT AFTER `edit`;
你能帮我吗?
谢谢
您无法获得比此更好的错误消息。您已经在表中将ID定义为自动增量。现在您尝试添加另一个字段sortpos作为自动增量,这是不允许的。一个表只能有一个自动增量,必须将其定义为主键。
从alter语句中删除AUTO_INCREMENT并创建一个触发器以增加新列。
根据您的评论,您将用户界面与表数据混淆。该表只需要有一个ID,如果需要,可以创建如下查询:
SELECT ID, ID AS SORTPOS, NAME FROM List
但是你甚至不需要查询,你应该只在用户界面级别进行。
另外,您在评论中显示的内容仅仅是列表的标题,而不是列表本身。