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

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

没有指定id列的初始值。


当前回答

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

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

其他回答

使用CREATE TABLE语句

CREATE TABLE my_table (
  id INT UNSIGNED NOT NULL AUTO_INCREMENT,
  name VARCHAR(100) NOT NULL,
  PRIMARY KEY (id)
) AUTO_INCREMENT = 100;

或ALTER TABLE语句

ALTER TABLE my_table AUTO_INCREMENT = 200;

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

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

用这个:

ALTER TABLE users AUTO_INCREMENT=1001;

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

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

设置一个从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'

SET GLOBAL auto_increment_offset=1;

SET GLOBAL auto_increment_increment=5;

Auto_increment_increment:连续列值之间的间隔

auto_increment_offset:确定AUTO_INCREMENT列值的起始点。 缺省值为1。

点击这里阅读更多