SQL判断是否存在
1 判断数据库是否存在 2 ifexists(select*frommaster..sysdatabaseswherename=N’库名’) 3 print’exists’ 4 else 5 print’notexists’ 6 7 --------------- 8 --判断要创建的表名是否存在 9 ifexists(select*fromdbo.sysobjectswhereid=object_id(N’[dbo].[表名]’)andOBJECTPROPERTY(id,N’IsUserTable’)=1) 10 --删除表 11 droptable[dbo].[表名] 12 GO 13 14 --------------- 15 --判断要创建临时表是否存在 16 IfObject_Id(’Tempdb.dbo.#Test’)IsNotNull 17 Begin 18 print’存在’ 19 End 20 Else 21 Begin 22 print’不存在’ 23 End 24 25 --------------- 26 --判断要创建的存储过程名是否存在 27 ifexists(select*fromdbo.sysobjectswhereid=object_id(N’[dbo].[存储过程名]’)andOBJECTPROPERTY(id,N’IsProcedure’)=1) 28 --删除存储过程 29 dropprocedure[dbo].[存储过程名] 30 GO 31 32 --------------- 33 --判断要创建的视图名是否存在 34 ifexists(select*fromdbo.sysobjectswhereid=object_id(N’[dbo].[视图名]’)andOBJECTPROPERTY(id,N’IsView’)=1) 35 --删除视图 36 dropview[dbo].[视图名] 37 GO 38 39 --------------- 40 --判断要创建的函数名是否存在 41 ifexists(select*fromdbo.sysobjectswhereid=object_id(N’[dbo].[函数名]’)andxtypein(N’FN’,N’IF’,N’TF’)) 42 --删除函数 43 dropfunction[dbo].[函数名] 44 GO 45 46 ifcol_length(’表名’,’列名’)isnull 47 print’不存在’ 48 49 select1fromsysobjectswhereidin(selectidfromsyscolumnswherename=’列名’)andname=’表名’ 50 51 >