zoukankan      html  css  js  c++  java
  • SET IDENTITY_INSERT 中的几个问题.sql

    --1. 会话中某个表已将此属性设置为ON,当为另一个表发出了SET IDENTITY_INSERT ON 句时将出错
    --测试的表
    CREATE TABLE ta(id int IDENTITY(1,1),col int)
    CREATE TABLE tb(id int IDENTITY(1,1),col int)
    GO

    --设置 IDENTITY_INSERT 属性
    SET IDENTITY_INSERT ta ON
    SET IDENTITY_INSERT tb ON
    GO


    /*======================================================*/


    --2. 如果插入记录的标识值大于表的当前标识值,则SQL Server自动将新插入值作为当前标识值使用
    --测试的表
    CREATE TABLE tb(id int IDENTITY(1,1),col int)

    --强制在表中插入标识值
    SET IDENTITY_INSERT tb ON
    INSERT tb(id,col) VALUES(10,1)
    SET IDENTITY_INSERT tb OFF

    INSERT tb(col) VALUES(2)
    SELECT * FROM tb
    /*--结果
    id           col
    ----------------- -----------
    10          1
    11          2
    --*/
    GO


    /*======================================================*/


    --3. 如果插入记录的标识值小于表的当前标识值,则表的当前标识值不受新插入值的影响
    --测试的表
    CREATE TABLE tb(id int IDENTITY(1,1),col int)
    INSERT tb VALUES(1)
    INSERT tb VALUES(2)

    --强制在表中插入标识值
    SET IDENTITY_INSERT tb ON
    INSERT tb(id,col) VALUES(1,11)
    SET IDENTITY_INSERT tb OFF

    INSERT tb(col) VALUES(3)
    SELECT * FROM tb
    /*--结果
    id           col
    ----------------- -----------
    1           1
    2           2
    1           11
    3           3
    --*/
  • 相关阅读:
    关于tinymce编辑器插件重新初始化问题
    16进制=>rebg(包含透明度的转换处理)
    在vue项目中所有地方拿到当前项目的vue实例
    vue-draggable两种情况下的demo
    Docker管理工具之portainer
    SpringBoot集成Elasticsearch
    ElasticSearch添加索引
    Docker安装ElasticSearch
    RabbitMQ学习总结(2)-API的使用
    Docker安装RabbitMQ
  • 原文地址:https://www.cnblogs.com/shihao/p/2526935.html
Copyright © 2011-2022 走看看