set IDENTITY_INSERT on 和 off 的设置

qlserver 批量插入记录时,对有标识列的字段要设置 set IDENTITY_INSERT 表名 on,然后再执行插入记录操作;插入完毕后恢复为 off 设置

格式:
  set IDENTITY_INSERT 表名 on
  set IDENTITY_INSERT 表名 off

举例:

set IDENTITY_INSERT peoplePworkpositiontype  on
insert peoplePworkpositiontype(id,workpositiontype,workpositiontypeid) values(1 , ‘平台‘ , 1 ) 
insert peoplePworkpositiontype(id,workpositiontype,workpositiontypeid) values(2 , ‘陆地‘ , 2 ) 
insert peoplePworkpositiontype(id,workpositiontype,workpositiontypeid) values(3 , ‘海上‘ , 3 )

go
set IDENTITY_INSERT peoplePworkpositiontype  off

set IDENTITY_INSERT peoplePstatetype  on
insert peoplePstatetype(id,nowstatetype,nowstatetypeid) values(1 , ‘出海‘ , 1 ) 
insert peoplePstatetype(id,nowstatetype,nowstatetypeid) values(2 , ‘出差‘ , 2 ) 
insert peoplePstatetype(id,nowstatetype,nowstatetypeid) values(3 , ‘公司‘ , 3 ) 
insert peoplePstatetype(id,nowstatetype,nowstatetypeid) values(4 , ‘会议‘ , 4 ) 
go
set IDENTITY_INSERT peoplePstatetype  off
go

时间: 2024-08-29 07:54:31

set IDENTITY_INSERT on 和 off 的设置的相关文章

sqlserver中set IDENTITY_INSERT on 和 off 的设置方法

sqlserver中set IDENTITY_INSERT on 和 off 的设置方法: 执行插入数据库插入数据时报了以下错误,我明明没有给主键set值但还是报错 解决方法如下: qlserver 批量插入记录时,对有标识列的字段要设置 set IDENTITY_INSERT 表名 on,然后再执行插入记录操作;插入完毕后恢复为 off 设置 格式: set IDENTITY_INSERT 表名 on set IDENTITY_INSERT 表名 off 举例: set IDENTITY_IN

SQLServer数据库自增长标识列的更新修改操作

SQLServer数据库自增长标识列的更新修改操作方法在日常的sql server开发中,经常会用到Identity类型的标识列作为一个表结构的自增长编号.比如文章编号.记录序号等等.自增长的标识列的引用很大程度上方便了数据库程序的开发,但是有时这个固执的字段类型也会带来一些麻烦. 一.修改标识列字段的值:(在执行insert时,将ID手动的设置成想要的值)有时,为了实现某个功能,需要修改类型为Identity自增长类型的字段的值,但由于标识的类型所限,这种操作默认是不允许的.比如,目前数据库有

Identity 自增长标识

Set Identity_insert [TableName] [ON/OFF] 当设置为ON时,在Insert操作时可以且必须手动指定插入到标识列中的编号,同时在操作完成后,需还原为OFF,否则下次插入时仍需指定编号 DBCC checkident(Table,[Reseed|NoReseed],10)将把指定表的种子值强制重设为10,当想知道当前的种子而不是重设种子,使用参数NoReseed,而不用再去顾忌第三个参数

SQL 如何在自增列插入指定数据

SQL Server  中数据表往往会设置自增列,常见的比如说 首列的ID列. 往数据表插入新数据的时候,自增列是跳过的,无需插入即会按照设置的自增规则进行列增长.那么,如果我们想往自增列插入我们指定的数据时该怎么做呢?  一:建立一张简单的测试表 CREATE TABLE randy_test (id INT IDENTITY(1,1), num INT) 二:如果强行插入数据时: INSERT INTO randy_test VALUES (1,11) 消息 8101,级别 16,状态 1,

[解决方案] 当 IDENTITY_INSERT 设置为 OFF 时

当 IDENTITY_INSERT 设置为 OFF 时,不能为表 'tbUser' 中的标识列插入显式值. 解决:这个情况是你的表里面,有一列数据类型是IDENTITY的,也就是数据库自动递增列对于自动递增的列, 插入的时候, 不要把这一列加进去.例如:1> CREATE TABLE test_create_tab2 (2> id INT IDENTITY(1, 1) PRIMARY KEY,3> val VARCHAR(10)4> );5> go1> INSERT I

当 IDENTITY_INSERT 设置为 OFF 时,不能向表 '#TT' 中的标识列插入显式值。 sql server 临时表

当 IDENTITY_INSERT 设置为 OFF 时,不能向表 '#TT' 中的标识列插入显式值.我是在SqlServer写存储过程中遇到的这个错误,当时就心想:临时表怎么会有主键呢,我也没有设置主键.然后我就和同事一块调试,终于发现了.原因就是我把真实的数据表中id(其实就是主键)取出来放到临时表(#TT)中,一开始是以为把主键的属性取出来了.后来又一起调试,发现不是那么回事,1.原来SqlServer会自动给临时表设置主键,如果你要插入数据的话,还要打开主键,这样你才能插入数据.“当 ID

当 IDENTITY_INSERT 设置为 OFF 时,不能为表中的标识列插入显式值

{"当 IDENTITY_INSERT 设置为 OFF 时,不能向表 'OrderList' 中的标识列插入显式值"} 对于这个异常可以从两个角度来处理:A:数据库执行语句  B:直接修改NHibernate中持久化类映射配置文件id节点 A数据库执行语句: 问题描述:当在数据库表主键设计为 (Orderid  int identity primary key),相对这个主键IDENTITY_INSERT默认设置为OFF,就是不能够显示插入主键id的值,例子如下: insert int

当 IDENTITY_INSERT 设置为 OFF 时,不能向表 'OrderList' 中的标识列插入显式值

问题描述:在SQL SERVER 2008中,向数据表中字段插入数据时,会报错,错误如下: 当 IDENTITY_INSERT 设置为 OFF 时,不能向表 'OrderList' 中的标识列插入显式值. 解决方案: 1 --允许将显式值插入表的标识列中 ON-允许 OFF-不允许 2 set identity_insert OrderList ON--打开3 4 insert into OrderList(id,ordername,createdate) 5 values(4520,'set'

当 IDENTITY_INSERT 设置为 OFF 时,不能为表 'T_Shell' 中的标识列插入显式值。

--允许将显示值插入表的标识列中-ON:允许 OFF:不允许set identity_insert T_shell ONset identity_insert T_Shell OFF 当 IDENTITY_INSERT 设置为 OFF 时,不能为表 'T_Shell' 中的标识列插入显式值.