快速删除DiscuzNT论坛数据表和存储过程_discuz教程-查字典教程网
快速删除DiscuzNT论坛数据表和存储过程
快速删除DiscuzNT论坛数据表和存储过程
发布时间:2016-12-26 来源:查字典编辑
摘要:本来想一个一个删除的,打开数据库一看那么多的表和存储过程,就放弃这种笨办法了,于是决定用SQL语句来搞定。代码如下:------------...

本来想一个一个删除的,打开数据库一看那么多的表和存储过程,就放弃这种笨办法了,于是决定用SQL语句来搞定。代码如下:

-----------------------------删除数据表---------------------

DECLARE @au_lname VARCHAR(40),@SQLString NVARCHAR(500)

DECLARE tb CURSOR FOR

SELECT name FROM sysobjects WHERE xtype='U' and name like 'dnt%'

OPEN tb

-- Perform the FIRST FETCH.

FETCH NEXT FROM tb INTO @au_lname

-- CHECK @@FETCH_STATUS TO see IF there ARE ANY more ROWS TO FETCH.

WHILE @@FETCH_STATUS = 0

BEGIN

-- This IS executed AS long AS the previous FETCH succeeds.

FETCH NEXT FROM tb INTO @au_lname

SET @SQLString='DROP TABLE '+ @au_lname

EXEC sp_executesql @SQLString

--DROP TABLE @au_lname

END

CLOSE tb

DEALLOCATE tb

GO

-----------------------------删除存储过程---------------------

DECLARE @au_lname VARCHAR(40),@SQLString NVARCHAR(500)

DECLARE tb CURSOR FOR

SELECT name FROM sysobjects WHERE xtype='p' and name like 'dnt%'

OPEN tb

-- Perform the FIRST FETCH.

FETCH NEXT FROM tb INTO @au_lname

-- CHECK @@FETCH_STATUS TO see IF there ARE ANY more ROWS TO FETCH.

WHILE @@FETCH_STATUS = 0

BEGIN

-- This IS executed AS long AS the previous FETCH succeeds.

FETCH NEXT FROM tb INTO @au_lname

SET @SQLString='DROP PROCEDURE '+ @au_lname

EXEC sp_executesql @SQLString

--DROP TABLE @au_lname

END

CLOSE tb

DEALLOCATE tb

GO

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新discuz学习
    热门discuz学习
    CMS教程子分类