Mysql 添加从1001开始自动递增的主键
这是我使用的代码:Mysql 添加从1001开始自动递增的主键,mysql,mysql-error-1064,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”附近使用的正确语法 如果我关闭自动增量=1001,代码将正常运行。如果我添加id,然后更改它: ALTER TABLE event_all_copy
ALTER TABLE `event_all_copy`
ADD `id` INT(5) AUTO_INCREMENT = 1001 PRIMARY KEY;
我得到以下错误:
1064-您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以了解第1行“AUTO INCREMENT=1001 PRIMARY KEY”附近使用的正确语法
如果我关闭自动增量=1001
,代码将正常运行。如果我添加id
,然后更改它:
ALTER TABLE event_all_copy AUTO_INCREMENT = 1001;
它不会更改现有值。请在定义表结构后尝试以下操作:
ALTER TABLE tablename AUTO_INCREMENT = 1000;
您需要更改表格,告诉它从
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;
在ADD
查询中不能有AUTO\u INCREMENT
值。这两个查询应该是两个独立的查询。要更改现有值,这很容易。你可以做:
UPDATE `event_all_copy` SET `id` = `id` + 1000;
AUTO_INCREMENT
updated值将仅为新输入的记录设置。如果我在ADD查询中没有AUTO_INCREMENT,我会收到一个错误,因为所有值都是0或NULL(在任何情况下都是重复的)。你的更新代码工作得很好!!我没想到。谢谢如果id的值有任何超出数据库范围的含义,请不要使用自动递增。