日期:2014-05-18  浏览次数:20857 次

[存在不存在][sql](第一次散分)(不多 只有40)
SQL code


--判断[数据库]是不是存在
------------------------------
--数据库名:master
    if exists(select * from [master]..[sysdatabases] where name=N'master')
        select 'true'
    else
        select 'false'
------------------------
--判断[表]是不是存在。
--表名:[dbo].[a]
    use master
    go
    if exists (select * from dbo.sysobjects where (id = object_id(N'[dbo].[a]') and objectproperty/*对象财产*/ (id, N'IsUserTable') = 1))
        select 'true'
    else
        select 'false'
    go
--------------------------------------
--判断[临时表]是否存在
    if object_id('tempdb.dbo.T_P') is not null --tempdb.dbo.T_P  [临时表名]
        select '存在'
    else
        select '不存在'
-----------------------------------
--[存储过程] 是否存在 
--N'[dbo].[selectTabAById]': [存储过程名]
    if exists (
        select * from dbo.sysobjects where id = object_id(N'[dbo].[selectTabAById]') and OBJECTPROPERTY(id, N'IsProcedure') = 1
    )
        select 'true'
    else
        select 'false'
    go

create view 
------------------------------------------
--[视图] 是否存在 
-- [my_View_Users] :N'[dbo].[视图名]'
if exists (
    select * from dbo.sysobjects where id = object_id(N'[dbo].[my_View_Users]') and OBJECTPROPERTY(id, N'IsView') = 1
)
    select 'true';
else
    select 'false';
---------------------------------------------
-- 判断[函数名]是否存在
--函数名:[dbo].[DayOnly]
if exists (
    select * from dbo.sysobjects where id = object_id(N'[dbo].[DayOnly]') and xtype in (N'FN', N'IF', N'TF')
)
    select 'true';
else
    select 'false';
----------------------------------------------



------解决方案--------------------
谢谢分享

这个判断的方法很多,楼主可以收集一下
------解决方案--------------------
有什么用?ssms或查询分析器,都有模板管理器,点两下鼠标,更多,更详细的都出来了。
------解决方案--------------------
很勤快
------解决方案--------------------
个人玩玩还行。
------解决方案--------------------
ok ok ok ok




------解决方案--------------------
分享是好事。
------解决方案--------------------
存储过程 视图 触发器等都可以用 object_id()来判断的,楼主加油


------解决方案--------------------
探讨
存储过程 视图 触发器等都可以用 object_id()来判断的,楼主加油

------解决方案--------------------
楼主的收集精神很赞赏