我们如何更改MySQL AUTO_INCRMENT起始编号?
MySQL AUTO_INCRMENT 值从 1 开始,但我们可以通过以下两种方式更改它 -
借助 ALTER TABLE 查询
我们可以使用ALTER TABLE 查询更改 AUTO_INCRMENT 的起始值,如下所示 -
ALTER TABLE table_name AUTO_INCREMENT = value;
Example
的中文翻译为:示例
Suppose we have created a table having column ‘id’ as AUTO_INCREMENT. Now if we will insert the values in it then the sequence number would start from 1 as you can see this in following queries −
mysql> Create Table EMP(id int NOT NULL PRIMARY KEY AUTO_INCREMENT, NAME VARCHAR(10));
Query OK, 0 rows affected (0.07 sec)
mysql> Insert Into EMP(Name) Values('Aryan');
Query OK, 1 row affected (0.02 sec)
mysql> Insert Into EMP(Name) Values('Yash');
Query OK, 1 row affected (0.04 sec)
mysql> Select * from EMP;
+----+-------+
| id | NAME |
+----+-------+
| 1 | Aryan |
| 2 | Yash |
+----+-------+
2 rows in set (0.00 sec)
现在,如果我们想要在之后更改序列号,我们需要使用ALTER TABLE查询来更改AUTO_INCREMENT的值,如下所示−
mysql> Alter table emp auto_increment = 10;
Query OK, 2 rows affected (0.25 sec)
Records: 2 Duplicates: 0 Warnings: 0
mysql> Insert Into EMP(Name) Values('Daksh');
Query OK, 1 row affected (0.03 sec)
mysql> Insert Into EMP(Name) Values('Shayra');
Query OK, 1 row affected (0.06 sec)
mysql> Select * from EMP;
+----+--------+
| id | NAME |
+----+--------+
| 1 | Aryan |
| 2 | Yash |
| 10 | Daksh |
| 11 | Shayra |
+----+--------+
4 rows in set (0.00 sec)
上面的查询已将 AUTO_INCRMENT 的值更改为 10,因此在插入新值后,我们将获得从 10 开始的序列号。
借助 CREATE TABLE 查询< /h2>
我们还可以在创建表时更改 AUTO_INCRMENT 值。可以通过使用 CREATE TABLE 查询指定 AUTO_INCRMENT 的值来完成,如下所示 -
CREATE TABLE (Column1 INT PRIMARY KEY NOT NULL AUTO_INCREMENT, Column2 data type) AUTO_INCREMENT = value;
Example
的中文翻译为:示例
mysql> Create Table EMP1(id INT NOT NULL PRIMARY KEY AUTO_INCREMENT, NAME VARCHAR(10)) AUTO_INCREMENT = 100;
Query OK, 0 rows affected (0.11 sec)
上述查询在创建表时将AUTO_INCREMENT的值指定为100。现在,如果我们将值插入其中,则序列号将从100开始,而不是默认值1,如下所示 −
mysql> Insert into emp1(name) values('Sohan');
Query OK, 1 row affected (0.04 sec)
mysql> Insert into emp1(name) values('Harshit');
Query OK, 1 row affected (0.05 sec)
mysql> Select * from emp1;
+-----+---------+
| id | NAME |
+-----+---------+
| 100 | Sohan |
| 101 | Harshit |
+-----+---------+
2 rows in set (0.00 sec)
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341