1、清空SQL Server数据库中所有表数据(1)编写存储过程脚本:CREATE PROCEDURE sp_DeleteAllDataASEXEC sp_MSForEachT
1、清空SQL Server数据库中所有表数据
(1)编写存储过程脚本:
CREATE PROCEDURE sp_DeleteAllData
AS
EXEC sp_MSForEachTable 'ALTER TABLE ? NOCHECK CONSTRaiNT ALL'
EXEC sp_MSForEachTable 'ALTER TABLE ? DISABLE TRIGGER ALL'
EXEC sp_MSForEachTable 'DELETE FROM ?'
EXEC sp_MSForEachTable 'ALTER TABLE ? CHECK CONSTRAINT ALL'
EXEC sp_MSForEachTable 'ALTER TABLE ? ENABLE TRIGGER ALL'
EXEC sp_MSFOREACHTABLE 'SELECT * FROM ?'
Go
说明:
存储过程sp_MSForEachTable :循环检查所有的表(微软官方文档)。
脚本创建了一个命名为sp_DeleteAllData的存储过程,前面两行语句分别禁用约束和触发器,第三条语句才是真正地删除所有数据,接下里的语句分别还原约束和触发器,最后一条语句是显示每个表中的记录,确认是否清空了所有的表数据。
(2)查询出数据库所有表,使用truncate语句逐个删除表数据:
首先使用select语句查询出数据库中所有表名
SELECT name FROM SysObjects Where XType='U' ORDER BY Name
查询到默认当前数据库下面的所有表名,如果需要查询其它数据库下的表,加上Where 条件 name = [dbname]
然后使用truncate或delete语句逐个删除表数据
truncate table order_buyer;
truncate table order_seller;
truncate table receivelist;
...
--结束END--
本文标题: SQL Server 如何清空数据库所有表数据
本文链接: https://www.lsjlt.com/news/37604.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-05-15
2024-05-15
2024-05-15
2024-05-15
2024-05-15
2024-05-15
2024-05-15
2024-05-15
2024-05-15
2024-05-15
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0