zoukankan      html  css  js  c++  java
  • 学习DBCC CHECKIDENT

    来源SQL联机丛书

    检查指定表的当前标识值,如有必要,还对标识值进行更正。

    语法
    DBCC CHECKIDENT
        ( 'table_name'
            [ , { NORESEED
                    | { RESEED [ , new_reseed_value ] }
                }
            ]
        )


    如果标识列上有主键或唯一键约束,
    使用DBCC CHECKIDENT ('table_name', RESEED, new_reseed_value) 当前值设置为new_reseed_value,这个时候需要注意:new_reseed_value 的值应该取当前标识列中的最大值,避免插入错误。

    示例
    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

    Ps:
    本地实验C例子,当前标识ID最大值=14,修改后,插入合法数据,新增job_ID=31;

    如果这个时候,再执行DBCC CHECKIDENT (jobs, RESEED, 30),再插入数据,会出现错误:
    主键约束失败错误。无效标识信息可能会导致错误信息 2627。

    另外:如何SQL取消列的标识,暂时未找到?



    无论生活、还是技术,一切都不断的学习和更新~~~努力~
  • 相关阅读:
    全面解析Vue.nextTick实现原理
    js 宏任务和微任务
    模拟实现ES6的set类
    git客户端出现libpng warning: iCCP: known incorrect sRGB profile
    js封装、继承
    js单例模式
    并行运行多个python虚拟机
    关于场景服务的一些想法
    关于不能对闭包函数进行热更新的问题
    Python string interning原理
  • 原文地址:https://www.cnblogs.com/GoGoagg/p/2039123.html
Copyright © 2011-2022 走看看