ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

sqlserver sqlite mysql 修改自增id 增量

2022-04-13 12:01:38  阅读:188  来源: 互联网

标签:sqlite jobs sqlserver 重置 tableName 自增 标识 GO


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

  

标签:sqlite,jobs,sqlserver,重置,tableName,自增,标识,GO
来源: https://www.cnblogs.com/qingjiawen/p/16139584.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有