添加一个自动递增的PRIMARY KEY,从1001开始

时间:2017-01-03 06:22:59

标签: mysql mysql-error-1064

这是我使用的代码:

ALTER TABLE `event_all_copy` 
ADD `id` INT(5) AUTO_INCREMENT = 1001 PRIMARY KEY;

我收到以下错误:

  

1064 - 您的SQL语法出错;检查与MySQL服务器版本对应的手册,以便在第1行的'AUTO INCREMENT = 1001 PRIMARY KEY'附近使用正确的语法

如果我离开AUTO_INCREMENT = 1001,代码将正常运行。如果我添加id然后更改它:

ALTER TABLE event_all_copy AUTO_INCREMENT = 1001; 

它不会改变现有值。

2 个答案:

答案 0 :(得分:0)

在定义表结构后尝试此操作:

ALTER TABLE tablename AUTO_INCREMENT = 1000;

答案 1 :(得分:0)

您需要更改表格,告诉它从1000开始:

ALTER TABLE `event_all_copy` AUTO_INCREMENT = 1000;

所以你的查询将是:

ALTER TABLE `event_all_copy` ADD `id` INT(5) PRIMARY KEY;
ALTER TABLE `event_all_copy` AUTO_INCREMENT = 1000;

AUTO_INCREMENT查询中不能包含ADD值。这两个查询应该是两个独立的查询。要更改现有值,这很容易。你可以这样做:

UPDATE `event_all_copy` SET `id` = `id` + 1000;

仅为新输入的记录设置AUTO_INCREMENT更新值。