SQL Server  中数据表往往会设置自增列,常见的比如说 首列的ID列。 往数据表插入新数据的时候,自增列是跳过的,无需插入即会按照设置的自增规则进行列增长。那么,如果我们想往自增列插入我们指定的数据时该怎么做呢?

 一:建立一张简单的测试表

CREATE TABLE randy_test (id INT IDENTITY(1,1), num INT)

二:如果强行插入数据时:

INSERT INTO randy_test VALUES  (1,11)

消息 8101,级别 16,状态 1,第 1 行
仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表'randy_test'中的标识列指定显式值。

可以看到,数据库提示 不能给标识列指定显示值,除非 将数据表设置IDENTITY_INSERT为ON

三:设置标识列插入开关 开启,然后执行我们的插入操作

SET IDENTITY_INSERT randy_test  ON
INSERT INTO randy_test (id,num) VALUES (1,11);
INSERT INTO randy_test (id,num) VALUES (2,22);
set identity_insert randy_test OFF (1 行受影响) (1 行受影响)

结果如下图:

SELECT  *FROM  randy_test AS rt

id num
1 11
2 22

SQL 如何在自增列插入指定数据的更多相关文章

  1. sqlserver 自增ID插入指定数据

    set identity_insert 表名 ON --允许对自增列Id插入指定数据 insert into table_name(Id,Name) values(1,'test') set iden ...

  2. sqlserver 自增ID插入指定数据(转)

    set identity_insert 表名 ON --允许对自增列Id插入指定数据 insert into table_name(Id,Name) values(1,'test') set iden ...

  3. SQL 2005 带自增列 带外键约束 数据导入导出

    1,生成建表脚本 选中要导的表,点右键-编写表脚本为-create到  ,生成建表脚本 2,建表(在新库),但不建外键关系 不要选中生成外键的那部分代码,只选择建表的代码 3,导数据,用SQL STU ...

  4. SQL SERVER 如何把1列多行数据 合并成一列显示

    示例 修改前:1列多行数据 修改后:合并成一列 示例语句 1 2 3 4 5 6 7 8 9 10 11 select 类别,     名称 = (         stuff(            ...

  5. sql 查询表格中多列重复的数据并显示该表的其他列

    我们一般情况下通过分组函数group by来查询重复的列 ) R 但是查询出的结果不能显示该表的其他列 想要查询一张表中有多个列重复的数据且也要显示该表的其他列 SELECT M.* FROM [db ...

  6. sql server 获取自增列下一个值或者获取指定表的主键值

    IDENT_CURRENT('TableName')为当前的最大标识值, IDENT_INCR('TableName')为设置的标识值增量, 两者相加即为下一个标识值 如: SELECT IDENT_ ...

  7. 一句SQL实现获取自增列操作

    @@IDENTITY返回最后插入的标识值. 语法@@IDENTITY 返回类型numeric 注释在一条 INSERT.SELECT INTO 或大容量复制语句完成后,@@IDENTITY 中包含此语 ...

  8. 通过EasyUI Tree说明SQL GUID和自增列ID的使用场景

    最新在开发中用到了EasyUI里面的Tree,通过API可以看到这个Tree的数据格式如下: 其中ID比较重要,API也说了,最开始我考虑到GUID比自增ID多占用了一些空间,所以采用的自增ID,测试 ...

  9. SQL GUID和自增列做主键的优缺点

    我们公司的数据库全部是使用GUID做主键的,很多人习惯使用int做主键.所以呢,这里总结一下,将两种数据类型做主键进行一个比较. 使用INT做主键的优点: 1.需要很小的数据存储空间,仅仅需要4 by ...

随机推荐

  1. ExtJS中xtype 概览

    基本组件: xtype Class 描述 button Ext.Button 按钮 splitbutton Ext.SplitButton 带下拉菜单的按钮 cycle Ext.CycleButton ...

  2. java并发之可见性与原子性:Syncronized和volatile

    转载:http://blog.csdn.net/guyuealian/article/details/52525724 在说明Java多线程内存可见性之前,先来简单了解一下Java内存模型.     ...

  3. leetCode刷题(找到最长的连续不重复的字符串长度)

    Given a string, find the length of the longest substring without repeating characters. Examples: Giv ...

  4. 使用C++实现图形的旋转、缩放、平移

    编译环境:VS2017 编译框架:MFC 实验内容:显示一个三角形,并将其绕中心进行旋转.缩放以及平移等操作 实验步骤: 1.打开VS2017,并创建MFC项目,具体方法参见:http://www.c ...

  5. 安装SQL Server DQS 和 MDS

    tep1:   安装特性时选择Data Quality Services 和 Master Data Services Step2:  安装完成之后, 打开 SQL Server 2017 Data ...

  6. 怎么确定Oracle客户端安装成功

    可通过能否登录sqlplus来判断是否安装成功. 操作系统:windows10 oracle版本:oracle 11g 步骤: 1.电脑win键+R键,输入cmd,进入命令提示符. 2.命令行中输入: ...

  7. mac下的readelf和objdump

    ELF文件包括: (1)可重定位的目标文件 (2)可执行的目标文件 (3)可被共享的目标文件 可以用file命令来看目标文件是否是ELF文件 在linux下,用readelf来看ELF头部或者其它各s ...

  8. PAT1036:Boys vs Girls

    1036. Boys vs Girls (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue This ti ...

  9. 自动化运维工具sshd,expect,pssh,rsync详解

    ssh secure shell,安全的远程登录:openssh和dropbear都是它的开源实现,ssh协议有v1和v2俩个版本,现在使用的都是v2版,v1已经不安全了:ssh基于DH算法做密钥交换 ...

  10. 详解vue生命周期

    vue生命周期 @(vue)[生命周期] 前言 在使用vue一个多礼拜后,感觉现在还停留在初级阶段,虽然知道怎么和后端做数据交互,但是对于mounted这个挂载还不是很清楚的.放大之,对vue的生命周 ...