判斷存儲過程、觸發器、視圖是否存在並刪除


1、判斷是否存在addOneArticle這個存儲過程
if Exists(select name from sysobjects where NAME = 'addOneArticle' and type='P')
drop procedure addOneArticle

2、判斷是否存在countAr這個觸發器
if exists(select * from dbo.sysobjects where id = object_id(N'[dbo].[countAr]') and OBJECTPROPERTY(id, N'IsTrigger') = 1)
drop trigger countAr

3、判斷是否存在View_1這個視圖
IF EXISTS (SELECT TABLE_NAME FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_NAME = N'View_1')
DROP View View_1

4、判斷是否存在USER_Fun這個用戶函數

(注意此處的type 有兩種,分別是'TF'-Table-valued Function 表值函數 或'FN'-Scalar-valued Function 標量值函數)
if exists(select * from dbo.sysobjects where id = object_id(N'[dbo].[USER_Fun]') and (type = 'FN' or type = 'TF'))
DROP FUNCTION USER_Fun

5、判斷表'Tb'是否存在
if (exists (SELECT * FROM dbo.sysobjects where id = object_id(N'Tb')and OBJECTPROPERTY(id, N'IsUserTable') = 1))
DROP TABLE Tb

6、判斷數據庫是否存在

if exists( select * from master.dbo.sysdatabases where dbid=db_ID( 'scbjdb' ) )

drop database scbjdb

else

print 'no exist scbjdb'

轉: http://snake-hand.iteye.com/blog/1523058

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM