SQL 自动编号处理

-- 关闭自动编号
SET IDENTITY_INSERT T OFF
-- 这个时候就允许插入Id值了
Insert Into T (Id,Name) Values (0,‘test‘)
-- 打开自动编号
SET IDENTITY_INSERT T ON
-- 这个时候就允许插入Id值了
Insert Into T (Id,Name) Values (1,‘test‘) --报错
Insert Into T (Name) Values (‘test2‘) --插入成功
-- 如果上一句报错 可以用下面这句检查标识信息 修正列值
DBCC CHECKIDENT (T,reseed)

适用数据导入时候自动编号处理等情况。

时间: 2024-07-28 15:20:12

SQL 自动编号处理的相关文章

sql查询时增加自动编号

查询时加序号  a:没有主键的情形: Select   identity(int,1,1)   as   iid,*   into   #tmp   from   TableName   Select   *   from   #tmp   Drop   table   #tmp b:有主键的情形: Select   (Select   sum(1)   from   TableName   where   KeyField   <=   a.KeyField)   as   iid,*   f

SQL 主键 自动编号 主键自增

1.新建一数据表,里面有字段id,将id设为为主键 代码如下: create table tb(id int,constraint pkid primary key (id)) create table tb(id int primary key ) 2.新建一数据表,里面有字段id,将id设为主键且自动编号 代码如下: create table tb(id int identity(1,1),constraint pkid primary key (id)) create table tb(i

DB2 SQL查询结果集自动编号、返回条数范围控制研究

DB2 SQL查询结果集自动编号.返回条数范围控制研究 摘要: DB2 SQL语句实现查询的记录自动编号.并根据编号进一步实现记录范围控制.分页查询. 环境: IBM DB2 Universal V9.1 Windows XP Professional 要求:写一个SQL语句,在查询结果中要显示出记录序号,这个序号是是根据记录顺序自动生成的. 测试初始化DB2 SQL脚本: drop table t_test; create table t_test (bs        bigint     

SQL第三课-自动编号与初涉约束

自动编号:auto_increment一张数据表中,要设定字段的唯一性,就会用到编号,确保编号的唯一性是避免重名和数据混乱的一种方式.主键,一张表只能并只有一个.在创建字段表时,指定 PRIMARY KEY;设置自动编号的记录一定要设置为主键.举例创建数据表3CREATE TABLE tb3(id SMALLINT UNSIGEND PRIMARY KEY AUTO_INCREMENT,usernname VARCHAR(20) NOT NULL);查看数据表的基本结构:show columns

sql 复杂自动编号错误批量修改方案

[一篮饭特稀原创,转载请注明出自http://www.cnblogs.com/wanghafan/p/5133953.html]  前提:自动编号为18位,前4位是年份,中间10位是XXXX,最后四位是0001-9999的自动编号. 问题:某天发现2016年自动编号后四位从0001-0081后变为7328-8530,出现编号错乱问题(原因未知待查).但数据需要马上批量重置,否则后续编号将继续错误. 方案:截取2016年份的前14位拼接后4位正确自动编号.实现如下: --查询2016年我司项目编号

SQL Server 重新恢复自动编号列的序号

1. truncate table tablename2. DBCC CHECKIDENT (tablename,reseed,1) truncate命令不但会清除所有的数据,还会将IDENTITY的SEED的值恢复到原始值. 而DBCC CHECKIDENT则更加方便一些,可以在不删除数据的情况下指定SEED的值. DBCC CHECKIDENT 只是将自动编排的索引号的指向移到了所指定的位置,实际的编号并没有发生改变,但有新记录插入时自动编号就会按照制定的记录号开始并累加,如果遇到累加的记录

ACCESS自动编号重新从1开始

方法一:  删掉自动编号的字段,再建一个同样的自动编号字段. 方法二:  选择工具,再选择数据库实用工具,单击压缩和修复数据库,这样就OK了. 方法三:(提示错误“无效的数据字段类型” 尝试失败)  1.在access里新建一个查询.  2.把视图改为sql视图.  3.在里面输入  ALTER TABLE 表名 ALTER COLUMN [自动编号字段名] COUNTER (你要的初始值, 1)  例如:  ALTER TABLE [user] ALTER COLUMN [id] COUNTE

access 清空后,自动编号怎么才能从0开始

把原来内容清空以后,自动编号,就会从原来的编号继续往下排列.我想从0开始重新计算.改怎么操作呢.我再百度上找到了.这个方法,记录下来.下次再用到方便找. 1.在access里新建一个查询.2.把视图改为sql视图.3.在里面输入  ALTER TABLE 表名 ALTER COLUMN [自动编号字段名] COUNTER (你要的初始值, 1)  例如:  ALTER TABLE [user] ALTER COLUMN [id] COUNTER (1, 1)4.运行后,编号就从1开始了.

Access数据库怎样设置自动编号

[e良师益友网]Access在很多情况下都会用到,而且这个软件相当的实用,下面讲解怎样设置自动编号从1开始排序问题 具体实现办法如下操作: 方法一: 删个那个自动编号的字段,再建一个同样的自动编号字段即可. 方法二: 自动编号是一直增加的(每次都加1),你再增加一条记录它的编号会在前面的基础上加1(删除的也算),如果你编号为1的记录被删除了,你想再要从1开始,可以打开Access数据库,选择工具,再选择数据库实用工具,单击压缩和修复数据库,这样就OK了. 方法三: 1.在access里新建一个查