如何设置从1001开始的MySQL表中的“id”列的初始值?

我想做一个插入“insert INTO users (name, email) VALUES ('{$name}', '{$email}')”;

没有指定id列的初始值。


当前回答

首先,您需要为自动递增添加列

alter table users add column id int(5) NOT NULL AUTO_INCREMENT FIRST

此查询用于首先添加列。 现在你必须重置自动增加初始值。所以使用这个查询

alter table users AUTO_INCREMENT=1001

现在表从1001开始

其他回答

设置一个从1001开始的自动递增的主键:

第一步,创建你的表:

create table penguins(
  my_id       int(16) auto_increment, 
  skipper     varchar(4000),
  PRIMARY KEY (my_id)
)

第2步,设置自动递增主键的起始编号:

ALTER TABLE penguins AUTO_INCREMENT=1001;

步骤3,插入一些行:

insert into penguins (skipper) values("We need more power!");
insert into penguins (skipper) values("Time to fire up");
insert into penguins (skipper) values("kowalski's nuclear reactor.");

步骤4,解释输出:

select * from penguins

打印:

'1001', 'We need more power!'
'1002', 'Time to fire up'
'1003', 'kowalski\'s nuclear reactor'

为此,您必须设置AUTO_INCREMENT值

ALTER TABLE tablename AUTO_INCREMENT = <INITIAL_VALUE>

例子

ALTER TABLE tablename AUTO_INCREMENT = 101

用这个:

ALTER TABLE users AUTO_INCREMENT=1001;

或者,如果您还没有添加id列,也添加它

ALTER TABLE users ADD id INT UNSIGNED NOT NULL AUTO_INCREMENT,
    ADD INDEX (id);

或者,如果您懒得编写SQL查询。那么这个解决方案就是为你准备的。

打开phpMyAdmin 选择所需表格 点击操作选项卡 为AUTO_INCREMENT设置所需的初始值 做. . !

你也可以在create table语句中设置它。

`CREATE TABLE(...) AUTO_INCREMENT=1000`