MySQL的auto

MySQL的auto_increment自增和oracle等数据库中的sequence是一个事理 。
并且良多应用场景下都需要利用到独一编号, 并且这个编号需要按照我们的指定的法则主动递增, 没有反复 。
【MySQL的auto】接下来小编给大师介绍MySQL的auto_increment的根基特征和利用注重点 。

需要这些哦
MySQL
Xshell
方式/
1打开Xshell, 毗连办事器并登岸到办事器, 输入毗连到MySQL

MySQL的auto



MySQL的auto



2建立测试表, 并指定字段为auto_increment, 如下图所示
create table test(
id int not null auto_increment primary key,
name varchar(10)
);

MySQL的auto



3MySQL的auto_increment的根基特征;
1.test表的主动增加列可以insert手工插入, 但若是插入的值是空或者是0, 则现实插入的将会是主动增加之后的值, 请看下图
insert into test values(0,'zhanghui');
insert into test values(null,'liubei');
select * from test;

MySQL的auto



42.可以利用并经由过程alter table test auto_incremenrt=n语句来强制设置主动增加列的初始值 。
例如利用如下语句强制设置自增加初始值
alter table test auto_incremenrt=4;
insert into test values(null,'guanyu');

MySQL的auto



53.我们利用last_insert_id()查询当火线程下的最后插入记实所利用的值 。
select last_insert_id();

MySQL的auto



64.一个表有且只能有一个auto_increment属性,自增加列必需是索引
5.若是表中的auto_increment最年夜值被删除, 不会被重用 。 即会跳号
mysql> select * from test;
+----+------------+
| id | name       |
+----+------------+
|  1 | zhanghui   |
|  2 | liubei     |
|  3 | guanyu     |
|  5 | shjhsdshjd |
+----+------------+
4 rows in set (0.00 sec)
mysql> delete from test where id=5;
Query OK, 1 row affected (0.01 sec)
mysql> 
mysql> insert into test values(null,'machao');
Query OK, 1 row affected (0.01 sec)
mysql> select * from test;
+----+----------+
| id | name     |
+----+----------+
|  1 | zhanghui |
|  2 | liubei   |
|  3 | guanyu   |
|  6 | machao   |
+----+----------+
4 rows in set (0.00 sec)

MySQL的auto



注重事项分享投票点赞或存眷, 是对小编最年夜的鼓动勉励 。 感谢~

以上内容就是MySQL的auto的内容啦, 希望对你有所帮助哦!

猜你喜欢