• 在向"带有自增字段的数据库表"中插入数据时,自定义"该自增字段"的数据


    在设计数据库表的时候,经常会使用自增主键或其他自增字段。比如:

    QQ截图20130724155744

    DB_UserGroups表中GroupID为该表主键,并为自增字段。

    但在将某字段设置自增后,想在插入数据时,人为指定自增字段的数据内容。如:

    ·

    insert into DB_UserGroups values(0,'全部')
    
    ·
    这时SQL SERVER会提示:

    ·

    消息 8101,级别 16,状态 1,第 1 行
    仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表'Northwind.dbo.DB_UserGroups'中的标识列指定显式值。
    ·
    通过提示可以看到,需要将IDENTITY_INSERT设为ON,通过以下语句即可打开:
    ·
    SET IDENTITY_INSERT DB_UserGroups ON
    ·
    但是现在再次执行insert语句的时候,发现仍然是这个错误,后来发现我语文没学好,漏掉了一个条件,就是一开始提到的“仅当使用了列列表”,呃。。。好吧,需要这样写insert语句:
    ·
    insert into DB_UserGroups(GroupID,GroupName) values(0,'全部')
    ·
    恩,把要插入的字段全部在表名后标明,不可以省略,这样就OK了。
    如果不需要自定义自增字段数据,可以再次使用:
    ·
    SET IDENTITY_INSERT DB_UserGroups OFF
    ·
    关闭掉IDENTITY_INSERT。
    ·
    PS.标识列的数据一旦添加,不可更改!不过可以先去掉标识列的“是标识”,然后改完再加回来。。。我只能想到这么多了。
  • 相关阅读:
    Django 想要单独执行文件
    Django基础
    Bootstrap框架
    Font Awesome矢量图标框架
    js函数式编程——蹦床函数
    ie被hao.360劫持的解决方法
    函数式编程——惰性链
    你可能不知道的BFC在实际中的应用
    高度随宽度适应的响应式方案
    腾讯云播放器更新——TCplayer
  • 原文地址:https://www.cnblogs.com/xwgli/p/3210928.html
Copyright © 2020-2023  润新知