如何在MySQL中设置初始值和自动增量?

问题描述 投票:242回答:8

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

我想做插入"INSERT INTO users (name, email) VALUES ('{$name}', '{$email}')";

不指定id列的初始值。

mysql insert auto-increment
8个回答
449
投票

用这个:

ALTER TABLE users AUTO_INCREMENT=1001;

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

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

48
投票

MySQL - 设置从1001开始的自动递增主键:

第1步,创建表:

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'

31
投票

MySQL Workbench

如果你想避免编写sql,你也可以在MySQL Workbench中右键单击表格,在菜单中选择“Alter Table ...”。

当表格结构视图打开时,转到选项卡“选项”(位于视图的下方),并将“自动增量”字段设置为下一个自动增量编号的值。

完成所有更改后,请不要忘记点击“应用”。

phpMyAdmin的:

如果您使用的是phpMyAdmin,则可以单击左侧导航中的表,转到“操作”选项卡,然后在“表格选项”下更改AUTO_INCREMENT值并单击“确定”。


11
投票

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

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

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

alter table users AUTO_INCREMENT=1001

现在你的表以1001开头


5
投票

此外,在PHPMyAdmin中,您可以从左侧(表格列表)中选择表格,然后通过去那里来执行此操作。 操作选项卡 - >表选项 - > AUTO_INCREMENT。 现在,设置您的值,然后按表格选项框下的Go。


3
投票

为此,您必须设置AUTO_INCREMENT

ALTER TABLE tablename AUTO_INCREMENT = <INITIAL_VALUE>

ALTER TABLE tablename AUTO_INCREMENT = 101

2
投票

或者,或者你懒得编写SQL查询。那么这个解决方案只适合你。 enter image description here

  1. 打开phpMyAdmin
  2. 选择所需的表格
  3. 单击“操作”选项卡
  4. 为AUTO_INCREMENT设置所需的初始值
  5. 完成..!

1
投票

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

`CREATE TABLE(...) AUTO_INCREMENT=1000`
© www.soinside.com 2019 - 2024. All rights reserved.