MSSQL中如何用SQL清除所有表的数据(downmoon)?

MSSQL 清空数据库的方法 一 清空数据库里所有的表  代码如下:DECLARE @tablename varchar(50) DECLARE @truncatesql varchar(255) DECLARE TrCun_Cursor CURSOR FOR select [name] from sysobjects where type = ‘U’ –有条件的清空表 name<>’不想清空的表名’– OPEN TrCun_Cursor FETCH TrCun_Cursor INTO @tablename WHILE(@@fetch_status = 0) BEGIN SET @truncatesql = ‘trunca 立即下载

有朋友问起:MSSQL中如何用SQL清除所有表的数据?这个需求分三种类型:
第一:只要数据库中表是空的;
第二:表是空的,并且自增长列可以从1开始增 长。
第三:表是空的,并且自增长列可以从1开始增长,而且存在表间的约束。
邀月稍微整理了下,放在这里,便于有需要的朋友参阅。
其实,这不算什么需求。只要用数据库的生成脚本,几分钟即可生成一个干净的表结构及存储过程、视图、约束等。这里提供了另一种用SQL解决问题的方案。权当是无聊的学习,加深点印象吧。呵呵。
首先,作一些假设:假设database名为TestDB_2000_2005_2008
预先准备一些脚本



先来看看第一种需求: 只要数据库中表是空的。
这个其实并不难,用一个游标循环得出所有表名,再清除所有表,delete或truncate table
提供几个语句:以下语句均在SQL2000/SQL2005/SQL2008下使用通过。

方法甲:



方法乙:


方法丙:



再来看看第二种需求: 表是空的,并且自增长列可以从1开始增长 。
这种需求其实和第一种差不多。 因为我们在以上语句中使用的是 truncate table 语句,所以,表的自增长 列是默认从头重新的。

关键是第三种需求: 表是空的,并且自增长列可以从1开始增长 ,而且存在表间的约束 。
这是个比较头痛的问题。因为外键约束,不能使用truncate table语句,但是,如果使用delete,又不能使自增长列从1开始重排。

我们不妨先来增加一些约束条件:

 

此时再来执行甲乙丙语句时会提示:“无法截断表 'd',因为该表正由 FOREIGN KEY 约束引用。”

我们可以这样设想:
1、先找出没有外键约束的表,truncate
2、有外键的表,先delete,再复位identity列
于是得出,
语句丁(注意没有使用游标 )

 

小结:除了以上方法,还可以临时禁用外键约束。语句为:


助人等于自助!   3w@live.cn

eDP、DP与HDMI——现代显示接口的核心解析 eDP、DP和HDMI各有千秋:eDP以嵌入式设备的低功耗见长,DP凭借开放生态和高带宽成为专业领域首选,而HDMI则依靠庞大的消费电子生态稳居家庭市场。未来,随着Type-C接口的普及和超高清内容的爆发,三者的技术边界可能进一步融合,但各自的核心优势仍将长期共存。对于用户而言,选择接口需基于设备需求——游戏玩家青睐HDMI的VRR,设计师依赖DP的多屏扩展,而轻薄本则离不开eDP的紧凑设计。 阅读详情

相关推荐

告别玄学调参:手把手教你用LSTM-AutoEncoder为传感器数据做异常检测(实战篇)

本文详细介绍了LSTM-AutoEncoder在传感器数据异常检测中的工程化实践,包括数据预处理、模型架构设计和生产环境部署策略。通过结合LSTM的时间序列处理能力和AutoEncoder的特征提取优势,该方法能够有效识别温湿度、PM2.5等传感器数据的异常模式,适用于工业物联网和室内空气质量监测等场景。

weixin_29212429的博客 476

MySQL删除表数据 MySQL清空表命令 3种方法

一、MySQL清空表数据命令:truncate SQL语法: truncate table 表名 注意: 不能与where一起使用。 truncate删除数据后是不可以rollback的。 truncate删除数据后会重置Identity(标识列、自增字段),相当于自增列会被置为初始值,又重新从1开始记录,而不是接着原来的ID数。 truncate删除数据后不写服务器log,整体删除速度快。 truncate删除数据后不激活trigger(触发器)。 二、MySQL删除表命令:

qq_49912622的博客 14万+

从2D到3D地图开发:手把手教你用Cesium+Three.js实现卫星轨迹可视化(含代码片段)

本文详细介绍了如何结合Cesium与Three.js实现从2D到3D的卫星轨迹可视化。通过对比传统Web GIS框架的局限,阐述了Cesium处理三维地理与轨道数据、Three.js负责高级图形渲染的分工优势,并提供了从环境搭建、坐标同步到动态粒子效果实现的完整代码实战指南。

nut55的博客 670

SQL清空数据技巧

在用mssql时 偶尔需要清空数据 以前一直用delete 有个缺陷:自动编号的ID列不能归零。 今天发现有个好的办法: Truncate Table [表名]这个可以直接清空数据(delete是逐行删除),并把自动编号的归零。

YoshiroGu 338

DSP配置I2C通讯(非IO口软件模拟时序)

dsp即数字信号处理器,是一种广泛应用的嵌入式处理器,主要应用是实时快速地实现各种数字信号处理算法,目前,国际主要的dsp供应商是ti公司,其tms32系列产品占据了dsp市场近一半的份额,本文以TMS320F28377D为例,使用ti公司dsp开发工具ccs10.1配置i2c模块。 写这篇文章的缘由,因为市面上很多DSP其实内部是具有硬件I2C接口的,但由于网络上大部分资料和例程都是利用IO口模拟I2C时序进而实现I2C通讯的。给很多想学习硬件I2C通讯的小伙伴带来了困难。 下面先介绍一下配置步骤 1.E

weixin_44387442的博客 5544

从零搭建YOLOv2硬件加速器:基于PYNQ-Z2的Vivado HLS与Jupyter Notebook实战

本文详细介绍了如何从零搭建YOLOv2硬件加速器,基于PYNQ-Z2开发板,结合Vivado HLS与Jupyter Notebook实现高效目标检测。通过硬件加速,YOLOv2推理速度提升8倍,功耗降低80%。文章涵盖硬件准备、Vivado HLS工程配置、IP核集成、PYNQ部署及常见问题解决,为开发者提供完整实战指南。

weixin_29188997的博客 1007

MySQL清空所有表的数据的方法

MySQL清空所有表的数据的详细方法教程。

m0_72958694的博客 7379

Ansys Lumerical + HFSS + optiSLang 三剑客:手把手教你优化行波MZM调制器(附完整参数配置)

本文详细介绍了如何利用Ansys Lumerical、HFSS和optiSLang三款工具构建自动化协同设计流程,以优化行波马赫曾德尔调制器(TW-MZM)的性能。通过参数化仿真、流程集成与元模型技术,该方案能高效解决多物理场耦合挑战,实现调制带宽、驱动电压等多目标的全局优化,显著提升光子集成芯片的设计效率与性能潜力。

weixin_29251131的博客 580

SQL清空表(高效)

一般情况下我们需要清空表用到delete,但是delete是一条一条数据来删除的,直到表清空,但是遇到数据量大的时候差距就很明显了,耗时久。当然有更好的办法,删除表数据但保留表结构使用truncate更快速也更安全。

慢慢 9428

Cesium 实战 04 - 标绘功能系列之画点(draw point)

Cesium 实战 - 标绘功能之画点(draw point)。

非科班Java出身GISer的博客 1082

【CANdelaStudio编辑CDD】-1.2-给$10服务SessionControl创建一个新Session会话并修改Session state machine会话状态机(UDS诊断)

前一篇:【UDS诊断描述文件CDD】-1.1-ISO_14229中$10服务理论部分https://blog.youkuaiyun.com/qfmzhu/article/details/120375515案例背景: 在CDD中如何给$10服务创建一个新的Session会话; 在CDD中如何给$10服务修改Session state machine会话状态机。 目录 1 查看$10服务中已有的Session会话​ 2 查看$10服务中已有的Session state machine会话状态机 3 在$10...

「汽车电子助手」的博客 6070

使用SQL语句清空数据库所有表的数据

近来发现数据库过大,空间不足,因此打算将数据库的数据进行全面的清理,但表非常多,一张一张的清空,实在麻烦,因此就想利用SQL语句一次清空所有数据.找到了三种方法进行清空.使用的数据库为MS SQL SERVER. 1.搜索出所有表名,构造为一条SQL语句 declare@trun_namevarchar(8000) set@trun_name='' select@trun_na...

weixin_30378623的博客 1212

华为OD机考双机位C卷 - 文件存储系统的排序(Java & Python & JS & GO & C++ & C)

华为OD机考双机位C卷 - 文件存储系统的排序, 提供Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。

算法大师! 777

(转)MSSQL中如何用SQL清除所有表的数据(downmoon)?

有朋友问起:MSSQL中如何用SQL清除所有表的数据?这个需求分三种类型:第一:只要数据库中表是空的;第二:表是空的,并且自增长列可以从1开始增长。第三:表是空的,并且自增长列可以从1开始增长,而且存在表间的约束。邀月稍微整理了下,放在这里,便于有需要的朋友参阅。其实,这不算什么需求。只要用数据库的生成脚本,几分钟即可生成一个干净的表结构及存储过程、视图、约束等。这里提供了另一种用SQL解决问题的...

weixin_30578677的博客 97

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

MSSQL中如何用SQL清除所有表的数据(downmoon)

MSSQL中如何用SQL清除所有表的数据(downmoon)? 收藏 此文于2009-09-11被推荐到优快云首页如何被推荐?有朋友问起:MSSQL中如何用SQL清除所有表的数据?这个需求分三种类型:第一:只要数据库中表是空的;第二:表是空的,并且自增长列可以从1开始增长。第三:表是空的,并且自增长列可以从1开始增长,而且存在表间的约束。邀月稍微整理了下,放在这里,便于有需要的朋友参阅。其实,这

hegongda的专栏 604

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

如何清除sql2005中字段的字段备注信息?(downmoon)

如何清除sql2005中字段的字段备注信息?(downmoon) 比如一个表t1, 字段tIDintPrimaryInt 字段说明 '主键' 字段tNamenvarchar(100) 字段说明 '名称' 字段tTimenvarchar(100) 字段说明 '创建时间' 字段tStatenvarchar(100) 字段说明 '当前状态' 现在想清除字段的备注信息,如“...

netxdiy的blog 107

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

用SQL语句添加删除修改字段、一些表与字段的基本操作、数据库备份等

用SQL语句添加删除修改字段 1.增加字段 alter table docdsp add dspcode char(200) 2.删除字段 ALTER TABLE table_NAME DROP COLUMN column_NAME 3.修改字段类型 ALTER TABLE table_name ALTER COLUMN column_name new_data_type 4.sp_

记录点滴 3775

MS SQL入门基础:SQL数据库的恢复

  在前面两节,我们介绍了如何利用SQL Server Enterprise Manager 和BACKUP 命令进行备份以及SQL Server 提供的备份向导。本节我们将介绍部分数据库恢复,以及如何使用SQL Server Enterprise Manager 和RESTORE 命令进行数据库恢复。   15.5.1 利用Enterprise Manager 恢复数据库   利用SQL S...

weixin_34259232的博客 187

MySQL的DELETE(删除数据)详解

本文将详细介绍DELETE语句的基本语法、高级用法、性能优化策略以及注意事项。

驴大毛的博客 1万+

sql删除或清空表数据

1、truncate –删除所有数据,保留表结构,不能撤销还原,速度快。2、delete –是逐行删除,不适合大量数据删除,速度极慢。3、drop –删除表,表数据和表结构一起删除,速度快。delete from 表名 where 列名="value "truncate table 表名。drop form 表名。...

a735474741的博客 5万+
上一篇: 无需ajax刷新父页面的控件的值(ie/firefox)(downmoon原创)
下一篇: 韩信点兵问题的简单算法(downmoon)
downmoon
博客等级 码龄24年 1676粉丝 494原创
评论 8
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值