设置自增列
MYSQL的自增列一定要是有索引的列,设置种子值要在表的后面设置
--mysql
-- 设置自增ID从N开始
CREATE TABLE empautoinc(
ID INT PRIMARY KEY AUTO_INCREMENT
) AUTO_INCREMENT = 100 --(设置自增ID从100开始)
insert into empautoinc(id) values(null)
Query OK, 1 row affected (0.00 sec)
mysql>select * from empautoinc
+-----+
| ID |
+-----+
| 100 |
+-----+
1 row in set (0.00 sec)
show table status like 'empautoinc'G
*************************** 1. row ***************************
Name: empautoinc
Engine: InnoDB
Version: 10
Row_format: Compact
Rows: 1
Avg_row_length: 16384
Data_length: 16384
Max_data_length: 0
Index_length: 0
Data_free: 0
Auto_increment: 101
Create_time: 2016-10-27 01:50:32
Update_time: NULL
Check_time: NULL
Collation: utf8_general_ci
Checksum: NULL
Create_options:
Comment:
1 row in set (0.00 sec)
设置自增列的步长,可以分为全局级别和会话级别
如果是会话级别,那么当用户新建一个会话的时候,那么步长又回到了全局级别,所以mysql的步长跟sqlserver的步长有很大的不同
mysql不能设置为 表级别 的步长
私信666领取资料
#1、查看现在mysql自增id的配置
show variables like '%increment%'
#2、下面步长为2的增长
+-------------------------------+-------+
| Variable_name | Value |
+-------------------------------+-------+
| auto_increment_increment | 2 |
| auto_increment_offset | 1 |
| div_precision_increment | 4 |
| innodb_autoextend_increment | 8 |
| ndb_autoincrement_prefetch_sz | 32 |
+-------------------------------+-------+
5 rows in set (0.01 sec)
#3、解决
set auto_increment_increment = 1和set @@auto_increment_increment = 1
如果想永久性的改回为1,在my.cnf or my.ini中查找这个field,然后修改,然后restart mysql.
如何在MYSQL插数据ID自增的方法。
如下参考:
1.在添加字段之前,第一个应该首先检查当前tb1表的结构,如下图所示。
2.实例字段列添加到表,如下所示。
3.再次看表结构和比较之前和之后的情况添加字段,如下图所示。
4.最后,插入新的数据行看到的样子,最后添加自动增长的字段,如下所示。
注意事项:
MySQL使用的SQL语言是访问数据库最常用的标准语言。MySQL软件采用双重许可政策,分为社区版,商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特性,一般中小网站开发选择MySQL作为数据库。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)