Sql Server中判断表或者数据库是否存在

Sql Server中判断表或者数据库是否存在

SQL Server中判断数据库是否存在:
  法(一):

    select * From master.dbo.sysdatabases where name=‘数据库名‘

  法(二):
    if db_id(‘数据库名‘) is not null

      drop database 。。。
    go

    create 。。。

SQL Server中判断表对象是否存在:
  select count(*) from sysobjects where id = object_id(‘数据库名.Owner.表名‘)

  if exists

     (select count(*) from sysobjects where id = object_id(‘数据库名.Owner.表名‘))
    print ‘存在‘
  else
    print ‘不存在‘

SQL Server中判断表中字段是否存在:
  if exists

      (select * from syscolumns where name=‘colname1‘ and id=object_id(‘数据库名.Owner.表名‘))
    print ‘存在‘
  else
    print ‘不存在‘
 (代表表tablename1中存在colname1字段 )
例:
  select * from syscolumns where name=‘Test‘ and id=object_id(‘dbo.test‘)

SQL Server中判断存储过程或视图是否存在:

  if object_id(‘视图或存储过程名‘) is not null
    drop proc/view 。。。
   go

   create proc/view 。。。

  或

  if Exists(select * from sysobjects where name=‘视图或存储过程名‘ AND   type = ‘P/V‘)
    drop proc/view 。。。
  go  

  create proc/view 。。。

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。