identity不连续的问题
来源:互联网 发布:递归算法的使用场景 编辑:程序博客网 时间:2024/05/01 13:25
SQL Server中,经常会用到Identity标识列,这种自增长的字段操作起来的确是比较方便。但它有时还会带来一些麻烦。
示例一 :当表中被删除了某些数据的时候,自增长列的编号就不再是一个连线的数列。这种时候我们可以用以下方案来解决。
SET IDENTITY_INSERT [TABLE]--表名 [ON OFF] --on或者off
允许将显式值插入表的标识列中,当设置为ON时,这时可能在INSERT操作时手工指定插入到标识列中的编号,同时必须在操作完成后,将IDENTITY_INSERT还原成OFF,否则下次插入的时候必须指定编号,那不然就无法完成INSERT操作。
示例二:当表中的记录被全部删除,但此时标识列的值越来越大的时候,如果不加以重置,它还会无休止的增长。这个时候我们就要用到:
DBCC CHECKIDENT(TABLE, [RESEED NORESEED], [1])
将把指定表的种子值强制重设为1。然而,你可能不想将种子重设为1,在这种情况下,你可以用你想用的种子值替代第三个参数。有时候你可能想知道当前的种子,而不是想重设种子,这时你就要用到NORESEED,而不用再去顾忌第三个参数。
示例一 :当表中被删除了某些数据的时候,自增长列的编号就不再是一个连线的数列。这种时候我们可以用以下方案来解决。
SET IDENTITY_INSERT [TABLE]--表名 [ON OFF] --on或者off
允许将显式值插入表的标识列中,当设置为ON时,这时可能在INSERT操作时手工指定插入到标识列中的编号,同时必须在操作完成后,将IDENTITY_INSERT还原成OFF,否则下次插入的时候必须指定编号,那不然就无法完成INSERT操作。
示例二:当表中的记录被全部删除,但此时标识列的值越来越大的时候,如果不加以重置,它还会无休止的增长。这个时候我们就要用到:
DBCC CHECKIDENT(TABLE, [RESEED NORESEED], [1])
将把指定表的种子值强制重设为1。然而,你可能不想将种子重设为1,在这种情况下,你可以用你想用的种子值替代第三个参数。有时候你可能想知道当前的种子,而不是想重设种子,这时你就要用到NORESEED,而不用再去顾忌第三个参数。
- identity不连续的问题
- iOS真机调试中出现identity(The identity 'iPhone Developer)证书不匹配的问题
- 解决auto_increment 编号不连续的问题
- 解决auto_increment 编号不连续的问题
- 标识列不连续问题
- cjson不连续存储问题
- wordpress文章ID不连续显示问题的完美解决
- 解决自增id不连续的问题
- 关于word 07中页码不连续的问题
- php数组下标不为不连续的数字的问题
- 查询不连续的数据
- 关于identity列的插入问题
- select into 与 identity 的排序问题
- IDENTITY列及其编号的问题
- IIS发布问题,Identity的作用
- 连续和不连续问题 导致颜色间断
- 最长的连续相同字符的字符串和最长连续不相同字符的子字符串问题
- canny边缘检测不连续问题
- PCI设备配置空间问题
- 用二进制进行权限管理
- 第一篇
- 第六章 - 图像变换 - 霍夫线变换(cvHoughLines2)
- DX11细分的优势和特点
- identity不连续的问题
- java线程池
- SQL2005错误:"已更新或删除的行值要么不能使该行成为唯一行,要么改变了多个行. "解决方法
- asp.net Web Services上传和下载文件(完整代码)
- 关于信号量与线程互斥锁的区别与实现
- 共享Windows下C++库之序列化组件
- 2011福布斯中国潜力企业榜
- 关于对synchronized的理解
- QT版本介绍