码迷,mamicode.com
首页 > 数据库 > 详细

DBCC CHECKIDENT 和SET IDENTITY_INSERT table OFF

时间:2018-12-25 12:26:06      阅读:217      评论:0      收藏:0      [点我收藏+]

标签:font   run   creat   昨天   min   插入   自己   track   mic   

TRUNCATE TABLE [DBO].TRACKING_CODE_BASE_Jasmine

DELETE FROM TRACKING_CODE_BASE_Jasmine

 

有同一张表,一次用truncate命令做清空处理,一次删除全部数据

 

DBCC CHECKIDENT(TRACKING_CODE_BASE_Jasmine,RESEED,0)

更改自身自增ID

 

IF NOT EXISTS (SELECT * FROM DBO.SYSOBJECTS WHERE ID = OBJECT_ID(N‘[DBO].[TRACKING_CODE_BASE_Jasmine]‘) AND OBJECTPROPERTY(ID, N‘ISUSERTABLE‘) = 1)
BEGIN
CREATE TABLE [DBO].TRACKING_CODE_BASE_Jasmine (
[PSP_ID] [INT] NULL,
[PSP_LST_ID] [INT] NULL,
[LST_SMS_CONTENT] VARCHAR(600) NULL,
[ROW_NUM] INT IDENTITY(1,1) NOT NULL
)
END
TRUNCATE TABLE [DBO].TRACKING_CODE_BASE_Jasmine

每次执行的自增开始,不一样了。

 

 

新表或者之前truncate过此表,0开始

不是新表或者之前delete过,从一开始

 

 

新表(刚建好还没有插入过数据):自动增量会从0开始
空表(曾经插入过数据,但是现在是空的):自动增量会从1开始

 

 

如果希望从指定的值开始,可以按照下面的表进行操作。

技术分享图片

 

 

有些表的某些字段创建了自增值,

在进行数据测试的时候,有时候希望插入自己设定的id值,要怎么操作?

以mssql数据库为例,

 关闭自增设置

 

背景: 我们常常有一些导入和导出,比如,导出昨天将商品加入心愿单中的客户,像导出表中,生成的心愿单id是自增的。 

在进行proc自动化测试的时候,我们会根据测试用例,涉及自动化测试的脚本,如果导出表每次自增,那生成的会员,不那么好验证,【总觉得这个例子不那么好理解】

此时需要关闭自增

 

SET IDENTITY_INSERT table OFF
SET IDENTITY_INSERT table ON

 

SET IDENTITY_INSERT HWISHLIST OFF
SET IDENTITY_INSERT CHANEL_PI_OPT_FLAG ON

DBCC CHECKIDENT 和SET IDENTITY_INSERT table OFF

标签:font   run   creat   昨天   min   插入   自己   track   mic   

原文地址:https://www.cnblogs.com/qianjinyan/p/10059276.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!