Maison >base de données >tutoriel mysql >清空所有表中的数据的存储过程

清空所有表中的数据的存储过程

WBOY
WBOYoriginal
2016-06-07 18:00:511518parcourir

清空所有表中的数据的sql语句,需要的朋友可以参考下,利用了存储过程。

代码如下:
--*******************************************************
--* 清空所有表中的数据 *
--* 撒哈拉大森林 *
--* 2010-6-28 *
--*******************************************************

if exists (select * from sysobjects where type='P' and name=N'P_DeleteAllData' )
drop procedure P_DeleteAllData
go

CREATE PROCEDURE P_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' --启用触发器
go

--执行存储过程
--exec P_DeleteAllData --执行
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn