我试图修改一个表,使其主键列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 | +--------------------+
当前回答
就像这样:
修改列id int(11)
其他回答
alter table tbl_user MODIFY COLUMN id int(10) auto_increment;
你必须在auto_increment指令之前指定列的类型,即ALTER TABLE document MODIFY column document_id INT auto_increment。
您可以使用以下查询使document_id自动递增
ALTER TABLE document MODIFY COLUMN document_id INT auto_increment
最好将document_id设为主键
ALTER TABLE document MODIFY COLUMN document_id INT auto_increment PRIMARY KEY;
如果以上都不行,试试这个。这就是我在MYSQL中所做的,是的,你需要写两次列名(document_id)。
ALTER TABLE document
CHANGE COLUMN document_id document_id INT(11) NOT NULL AUTO_INCREMENT ;
以前的表格语法:
CREATE TABLE apim_log_request (TransactionId varchar(50) DEFAULT NULL);
要将TransactionId更改为自动递增,请使用此查询
ALTER TABLE apim_log_request MODIFY COLUMN TransactionId INT auto_increment;