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

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

    语法
    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。

  • 相关阅读:
    20181030-4 每周例行报告
    20181023-3 每周例行报告
    20181016-10 每周例行报告
    PSP总结报告
    第十二周例行报告
    对团队成员公开感谢
    第十一周例行报告
    第十周例行报告
    第九周例行报告
    第八周例行报告
  • 原文地址:https://www.cnblogs.com/answercard/p/5360819.html
Copyright © 2011-2022 走看看