sqlserver sqlite mysql 修改自增id 增量
1.MySQL重置自增id
方法一:使用truncate命令(截断表)
truncate table tableName(表名);
注意:truncate命令一次性将表中所有数据删除,且无法恢复。并且在删除过程中不会激活与表有关的删除触发器。执行速度快。使用truncate命令后,表和索引所占用的空间会恢复到初始大小。
方法二:
delete from tableName(表名);
alter tableName(表名) auto_increment=1;
2.sqlite重置自增id
当数据库中包含自动编号的字段时,SQLite会自动建立一个名为sqlite_sequence的表。这个表 包含两个字段:name和seq。其中,name记录了自动编号字段所在的表的名称,seq字段记录了该表当前最大的序号(下一条记录的编号将为当前序号加1)。重置表的自增id,只需要修改sqlite_sequence表即可。
方法一:
将表的记录全部清空,并把自动编号归0。
DELETE FROM tableName; UPDATE sqlite_sequence SET seq = 0 WHERE name = 'tableName';
方法二:
删除对应记录。
DELETE FROM tableName; DELETE FROM sqlite_sequence WHERE name = 'tableName';
3.sqlserver重置自增id
1.删除表中的所有的数据的同时,将自动增长清零。
truncate table TableName
2.不删除表的数据,直接重置自动增长的值。
DBCC CHECKIDENT('TableName', RESEED, 0
1:取得上次插入的ID最大值 SCOPE_IDENTITY() --局部变量,@@IDENTITY相当于全局变量 2:重置当前标识值 A. 如有必要,重置当前标识值 下例在必要的情况下重置 jobs 表的当前标识值。 USE pubs GO DBCC CHECKIDENT (jobs) GO B. 报告当前标识值 下例报告 jobs 表中的当前标识值;如果该标识值不正确,并不对其进行更正。 USE pubs GO DBCC CHECKIDENT (jobs, NORESEED) GO C. 强制当前标识值为 30 下例强制 jobs 表中的当前标识值为 30。 USE pubs GO DBCC CHECKIDENT (jobs, RESEED, 30) GO
-- 清理数据库并可能减少文件大小
VACUUM;