快速删除DiscuzNT论坛数据表和存储过程

快速删除DiscuzNT论坛数据表和存储过程,第1张

快速删除DiscuzNT论坛数据表和存储过程

该企业的一个客户规定将DiscuzNT从当前网站(数据信息和网页)中删除。网页很简单,可以用FTP链接删除。数据表的删除有点令人担忧:我的DNT社区论坛是一个数据库查询,用于当前的网站程序。

原本想一个一个删除的,开启数据库查询一看那么多的表和存储过程,就舍弃这类笨办法了,因此决策用SQL句子来拿下。编码以下:

复制代码编码以下:
-----------------------------删除数据表---------------------
DECLARE@au_lnameVARCHAR(40),@SQLStringNVARCHAR(500)
DECLAREtbCURSORFOR
SELECTnameFROMsysobjectsWHERExtype='U'andnamelike'dnt%'
OPENtb
--PerformtheFIRSTFETCH.
FETCHNEXTFROMtbINTO@au_lname
--CHECK@@FETCH_STATUSTOseeIFthereAREANYmoreROWSTOFETCH.
WHILE@@FETCH_STATUS=0
BEGIN
--ThisISexecutedASlongASthepreviousFETCHsucceeds.
FETCHNEXTFROMtbINTO@au_lname
SET@SQLString='DROPTABLE'@au_lname
EXECsp_executesql@SQLString
--DROPTABLE@au_lname
END
CLOSEtb
DEALLOCATEtb
GO
-----------------------------删除存储过程---------------------
DECLARE@au_lnameVARCHAR(40),@SQLStringNVARCHAR(500)
DECLAREtbCURSORFOR
SELECTnameFROMsysobjectsWHERExtype='p'andnamelike'dnt%'
OPENtb
--PerformtheFIRSTFETCH.
FETCHNEXTFROMtbINTO@au_lname
--CHECK@@FETCH_STATUSTOseeIFthereAREANYmoreROWSTOFETCH.
WHILE@@FETCH_STATUS=0
BEGIN
--ThisISexecutedASlongASthepreviousFETCHsucceeds.
FETCHNEXTFROMtbINTO@au_lname
SET@SQLString='DROPPROCEDURE'@au_lname
EXECsp_executesql@SQLString
--DROPTABLE@au_lname
END
CLOSEtb
DEALLOCATEtb
GO

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/773916.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-03
下一篇 2022-05-03

发表评论

登录后才能评论

评论列表(0条)

保存