MySQL中如何增加递增数据

MySQL中如何增加递增数据,第1张

方法一:

如果曾经的数据都不需要的话,可以直接清空所有数据,并将自增字段恢复从1开始计数

truncate

table

表名

方法二:

dbcc

checkident

('table_name',

reseed,

new_reseed_value)

当前值设置为

new_reseed_value。如果自创建表后没有将行插入该表,则在执行

dbcc

checkident

后插入的第一行将使用

new_reseed_value

作为标识。否则,下一个插入的行将使用

new_reseed_value

+

1。如果

new_reseed_value

的值小于标识列中的最大值,以后引用该表时将产生

2627

号错误信息。

方法二不会清空已有数据, *** 作比较灵活,不仅可以将自增值归零,也适用于删除大量连续行后,重新设置自增值并插入新的数据;或从新的值开始,当然不能和已有的冲突。

$sql="delete

from

$table_vote"

mysql_query($sql,

$link)

$sql="alter

table

$table_vote

auto_increment=1"

mysql_query($sql,

$link)

设置自增列

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领取资料


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/8737034.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-20
下一篇 2023-04-20

发表评论

登录后才能评论

评论列表(0条)

保存