sql 判断表是否存在,判断列是否存在

判断表是否存在:

语法:

SELECT  * FROM dbo.SysObjects where id = object_id(N'表名')

例子:

SELECT  * FROM dbo.SysObjects where id = object_id(N'ExchangeLog')
if exists(SELECT * FROM dbo.SysObjects where id = object_id(N'ExchangeLog'))
  print '表存在'
else
  print '表不存在'

判断列是否存在:

语法:

select * from syscolumns where id=object_id(N'表名') and name ='列名'

例子

select * from syscolumns where id=object_id(N'ExchangeLog') and name ='Extype'
if exists(select * from syscolumns where id=object_id(N'ExchangeLog') and name ='Extype')
alter table ExchangeLog drop column ExType
else
begin
alter table [ExchangeLog] add ExType nchar(15)
end
go
上一篇:sql 判断 表 视图 存储过程 存在 然后 删除


下一篇:SQL 判断表是否存在 数据表不存在是致命错误