Sql Server清空表并重置主键序号有两种方法
清除表数据并重置主键
TRUNCATE Table [Table name]
删除所有表数据
DELETE FROM [Table name]
重置主键序列
dbcc checkident([Table name],reseed,0)
以Sql Server2014为例,比如当前有2条记录(序列为2),执行成功后输出结果:
正在检查标识信息: 当前标识值为“2”。
DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。
如果表里有数据,只重置表主键序列,那么再插入数据会报错:
消息 2627,级别 14,状态 1,第 4 行
违反了 PRIMARY KEY 约束“PK_TS”。不能在对象“dbo.TS”中插入重复键。重复键值为 (1)。
语句已终止。
因为序列被重置为0,下次插入新记录时Id自增为1,但是目前数据库已经存在Id为1的记录,所以就报错了。所以一般先删除表数据后再执行重置主键序列。
3

站心网
Sql Server清空表并重置主键序号有两种方法清除表数据并重置主键TRUNCATE Table [Table name]删除所有表数..
为您推荐

SQL Server EF使用Sequence全局自增ID
程序笔记
2024年11月16日
在使用 Entity Framework (EF) 时,如果需要在 SQL Server 中实现一个 全局自增 ID,可以通过以下方法来实现。全局自增 ID 的需求通常是为了在多表之间实现唯一性递增 ID。实现方式 1:使用 SQL Server 的 SequenceS..
SQL Server用UUID做主键性能问题和解决方案
程序笔记
2024年11月12日
在 SQL Server 中使用 UUID(全称:Universally Unique Identifier) 作为主键确实可能带来一些性能问题,特别是在大型数据库和高写入负载的场景下。以下是一些关键的性能挑战及其原因:1. 无序插入导致索引碎片化UU..

修改VisualSVN Server地址为ip地址,修改svn服务端地址为ip或者域名地址的方法
程序笔记
2024年10月31日
svn服务端搭建成功之后,地址太长很麻烦,想搞一个服务器专门做svn服务端,修改svn地址为ip地址无奈网上教程不靠谱,于是自己研究了下1.修改VisualSVN 的地址2修改地址并保存很多人不成功就在这里,点击确认之后复制..
数据库SQL Server2014和SQL Server2019的区别和如何选择?
程序笔记
2024年10月20日
SQL Server 2014和SQL Server 2019是微软公司发布的两个版本的数据库管理系统,它们在性能、安全性以及可扩展性等方面各有特点。在选择这两个数据库版本时,需要根据系统需求、预算状况以及技术团队的熟悉程度等因素..

创建Blazor应用,刷新页面调试时发现OnInitialized会执行两次。 这里需要注意,进入这个站点的第一个页面的OnInitialized会被执行两次,例如我在浏览器输入URL进去了A页面,那么A页面的OnInitialized会执行两次。然..

在这篇文章中,我们将在 Windows 11 或 Windows Server 2022 上安装 VirtIO 驱动程序。此过程适用于旧版本的 Windows 桌面或具有桌面体验的 Windows 服务器。适用于 KVM 的 VirtIO 驱动程序支持在主机系统上使用虚拟..
SqlServer临时表和游标循环遍历数据表方法实例
程序笔记
2024年07月05日
最近有个需求,有包含用户Id的表Users,包含通话记录的表MobileCalls,现在要查询表Users中某些用户联系过的通话次数最多的5个人的手机号结果集。所以考虑了一下要使用临时表和游标。用游标遍历表Users,根据表Users..
SQLServer数据库基础面试题
程序笔记
2024年07月04日
当面试与SQL Server数据库相关的职位时,通常会涉及到一些基本的SQL Server数据库知识。以下是一些可能会在面试中遇到的SQL Server数据库面试题及其答案:1. 什么是SQL Server?答案: SQL Server是由Microsoft开发..
SQLServer 锁表查询命令
程序笔记
2024年07月03日
在 SQL Server 中,你可以使用以下命令来查询当前会话中的锁信息:SELECTrequest_session_id AS SessionID,resource_type AS LockType,resource_database_id AS DatabaseID,resource_associated_entity_id AS Object..
SQLServer nolock查询防止锁表
程序笔记
2024年07月03日
在 SQL Server 中,可以使用 NOLOCK 提示来执行一个不会阻塞其他查询的“脏读”查询。这意味着你可以在其他事务正在修改数据的同时读取数据,但需要注意可能会读取到未提交的数据或者被其他事务修改的数据..
SqlServer分页查询示例
程序笔记
2024年07月02日
在 SQL Server 中进行分页查询,你可以使用 OFFSET 和 FETCH 子句。这两个子句可以在 ORDER BY 子句之后使用,以限制查询结果的行数和起始位置。以下是一个示例的分页查询:SELECT * FROM your_tableORDER BY your_c..

SQLServer修改服务端口号
程序笔记
2024年07月02日
最近查看服务器日志发现了很多数据库登陆失败的记录。可能是之前为了方便本地连接数据库在防火墙打开了1433端口,现在有人尝试暴力破解,于是想把默认端口改了。SQLServer 默认端口号为 1433,但很多时候为了安全起..
SQLServer分页查询语句
程序笔记
2024年07月02日
在 SQL Server 中实现分页查询,可以使用 OFFSET 和 FETCH 子句。以下是一个示例:SELECT * FROM YourTableORDER BY YourColumn -- 按照某个列排序OFFSET 10 ROWS-- 跳过前10行FETCH NEXT 10 ROWS ONLY; -- 获取接下..
SQLServer DATEDIFF用法和性能
程序笔记
2024年07月01日
SQL Server 中的 DATEDIFF 函数用于计算两个日期之间的差值。它的语法如下:DATEDIFF(interval, startdate, enddate)其中,interval 参数表示要计算的时间间隔单位,startdate 表示时间间隔的开始日期,enddate 表示..

SQLServer如何查询死锁和防止死锁
程序笔记
2024年06月30日
死锁是在数据库系统中两个或多个事务互相等待对方释放资源而无法继续执行的情况。在 SQL Server 中,可以使用一些查询来检测死锁,并且可以采取一些措施来防止死锁的发生。SQLServer查询死锁语句:查看当前死锁情况..

MySQL和SQLServer哪个性能更好?
程序笔记
2024年06月30日
MySQL 和 Microsoft SQL Server 是两种不同的关系型数据库管理系统(RDBMS),它们在性能方面的比较并不简单,因为性能取决于多个因素,包括硬件、配置、查询优化、索引设计等。下面是一些一般性的观点,但请注意这..
SQL Server 缓存和内存管理优化
程序笔记
2024年06月30日
概述SQL Server 使用缓存来存储数据页和执行计划,以提高性能。内存管理对于确保 SQL Server 有效使用可用内存至关重要。缓存SQL Server 有两个主要的缓存:缓冲池:存储数据页过程缓存:存储已编译的查询计划内存管..

SQL Server 2022有哪些新特性?
程序笔记
2024年06月29日
SQL Server 2022 是 Microsoft 推出的最新版本数据库管理系统,它包含许多新功能和改进,旨在提高性能、安全性、云支持和人工智能和机器学习功能。以下是 SQL Server 2022 的一些主要新特性:性能改进:内存优化表: ..
在 CentOS 7/Fedora 上安装 Microsoft SQL Server 2019
程序笔记
2024年06月27日
从 SQL Server 2017 开始,SQL Server 在 Linux 上运行。此 SQL Server 与在 Microsoft 操作系统上运行的 SQL Server 数据库引擎相同,具有许多相似的功能和服务。本指南将引导您完成在 CentOS 7 上安装 Microsoft S..

自建的nuget Server推送时报错:Response status code does not indicate success: 406 (Not Acceptable)
程序笔记
2024年06月22日
问题描述在自己搭建的nuget server上通过nuget push -Source url -ApiKeyurl -ApiKey命令推送到server时报错Response status code does not indicate success: 406 (Not Acceptable),中文为:响应状态代码不指示成..