我试图修改一个表,使其主键列AUTO_INCREMENT后的事实。我已经尝试了下面的SQL,但得到了一个语法错误通知。
ALTER TABLE document
ALTER COLUMN document_id AUTO_INCREMENT
是我做错了什么还是这不可能?
+--------------------+ | VERSION() | +--------------------+ | 5.0.75-0ubuntu10.2 | +--------------------+
我试图修改一个表,使其主键列AUTO_INCREMENT后的事实。我已经尝试了下面的SQL,但得到了一个语法错误通知。
ALTER TABLE document
ALTER COLUMN document_id AUTO_INCREMENT
是我做错了什么还是这不可能?
+--------------------+ | VERSION() | +--------------------+ | 5.0.75-0ubuntu10.2 | +--------------------+
当前回答
你必须在auto_increment指令之前指定列的类型,即ALTER TABLE document MODIFY column document_id INT auto_increment。
其他回答
下面的陈述是正确的。注意,您需要再次为列名提到数据类型(重新声明列名之前的数据类型)。
ALTER TABLE document
MODIFY COLUMN document_id int AUTO_INCREMENT;
使用以下查询:
ALTER TABLE YourTable DROP COLUMN IDCol
ALTER TABLE YourTable ADD IDCol INT IDENTITY(1,1)
试试下面的方法:
ALTER TABLE table_name MODIFY COLUMN id datatype auto_increment;
ALTER TABLE document MODIFY COLUMN document_id INT auto_increment
你可以这样做:
alter table [table_name] modify column [column_name] [column_type] AUTO_INCREMENT;