Sql Server自增列和delete truncate删除语句关系

定义一个自增列,使用delete后,再插入数据,自增列仍按照删除前的最大值递增;若使用truncate 后,再插入数据,自增列从头开始递增

脚本一(使用delete):

create table #test(codes int identity,valuess int)

insert into #test(valuess) select 1

select * from #test

----------------

delete from #test

------------------

insert into #test(valuess)  select 2

select * from #test

drop table #test

脚本二(使用truncate):

create table #test(codes int identity,valuess int)

insert into #test(valuess) select 1

select * from #test

-------------------

truncate table #test

----------------------

insert into #test(valuess)  select 2

select * from #test

drop table #test

时间: 2024-10-06 00:45:43

Sql Server自增列和delete truncate删除语句关系的相关文章

SQL SERVER 自增列的方法

declare @Table_name varchar(60) set @Table_name = ''; if Exists(Select top 1 1 from sysobjects           Where objectproperty(id, 'TableHasIdentity') = 1             and upper(name) = upper(@Table_name)         )     select 1else select 0 -- or if Ex

sql server 自增列,值突然增大1000的情况

解决方法: 1 打开配置管理器2左面点击sql服务3右面 右键点击SQL Server(MSSQLSERVER) 4点击 启动参数5 在参数 里输入  -T272 点增加 原文地址:https://www.cnblogs.com/superfeeling/p/11774417.html

SQL SERVER 自增列 修改 查看 关闭 操作

CREATE TABLE  tb_name ( id INT NOT NULL IDENTITY PRIMARY KEY, title NVARCHAR(20) NULL ) 查看 tb_name 表中 是 自增长的列 SELECT TOP(1) IDENTITYCOL FROM tb_name 查看 tb_name 表中  自增长列的当前值 DBCC   CHECKIDENT   (tb_name) 修改 tb_name 表中  自增长列的当前值 DBCC   CHECKIDENT   (tb

SQL Server 2014 聚集列存储

SQL Server 自2012以来引入了列存储的概念,至今2016对列存储的支持已经是非常友好了.由于我这边线上环境主要是2014,所以本文是以2014为基础的SQL Server 的列存储的介绍.下面我们主要看一下列存储的发展以及一些原理: 列存储的开发是想要处理超大量数据进行分析计算,于是在SQL Server 2012时,SQL Server 引入了列存储索引,用以显著提供高传统数据仓库类型语句的性能,并在SQL Server 2014中做了进一步加强.列存储会将一个列的数据单独存放在一

SQL Server 行转列

语法: PIVOT用于将列值旋转为列名(即行转列),在SQL Server 2000可以用聚合函数配合CASE语句实现 PIVOT的一般语法是:PIVOT(聚合函数(列) FOR 列 in (…) )AS P 完整语法: table_source PIVOT( 聚合函数(value_column) FOR pivot_column IN(<column_list>) ) UNPIVOT用于将列明转为列值(即列转行),在SQL Server 2000可以用UNION来实现 完整语法: table

sql server拼接一列字段

有一表,名曰IPSlot,欲取IP整列字段. sql语句,利用sql server的xml auto将表数据转换成xml=> 1 select name= 2 STUFF( 3 REPLACE( 4 REPLACE((select IP from IPSlot for xml auto), '<IPSlot IP="', '/') 5 , '"/>', '') 6 , 1, 1, '') 效果=> 关于stuff关键字用法示例=> 1 SELECT STU

SQL ID自增列从1开始重新排序

开发了android程序就知道,原生的模拟器启动比较慢,还会出现莫名的问题,这边介绍另外一种模拟器: BlueStacks:BlueStacks是一个可以让Android 应用程序运行在Windows系统(目前,该公司再次宣布推出Mac版Bluestacks模拟器.)上的软件,由BlueStacks公司推出.BlueStacks新版本App Player采用名为Layercake的技术,可以让针对ARM处理器开发的安卓应用运行在基于x86处理器的PC或者平板上,而且可以调用PC的显卡,能提供比A

sql server 行转列(转载)

SQL Server中行列转换 Pivot UnPivot PIVOT用于将列值旋转为列名(即行转列),在SQL Server 2000可以用聚合函数配合CASE语句实现 PIVOT的一般语法是:PIVOT(聚合函数(列) FOR 列 in (…) )AS P 完整语法: table_source PIVOT( 聚合函数(value_column) FOR pivot_column IN(<column_list>) ) UNPIVOT用于将列明转为列值(即列转行),在SQL Server 2

SQL Server将一列的多行内容拼接成一行的实现方法

SQL Server将一列的多行内容拼接成一行的实现方法 投稿:mdxy-dxy 这篇文章主要介绍了SQL Server将一列的多行内容拼接成一行的实现方法,需要的朋友可以参考下 下面大家先看下示例代码: 示例 昨天遇到一个SQL Server的问题:需要写一个储存过程来处理几个表中的数据,最后问题出在我想将一个表的一个列的多行内容拼接成一行,比如表中有两列数据 : 类别 名称 AAA 企业1 AAA 企业2 AAA 企业3 BBB 企业4 BBB 企业5 我想把这个表变成如下格式: 类别 名称