论坛首页 综合技术论坛

sql知识汇总之 判断数据库,表,列是否存在

浏览 2390 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (2)
作者 正文
   发表时间:2011-05-17  

判断当前数据库的名称

代码:

DECLARE @maDbName SYSNAME
IF (DB_NAME() LIKE N'%Test')
BEGIN
 SET @maDbName = N'MemberArchiveTest'
END
ELSE
BEGIN
 SET @maDbName = N'MemberArchive'
END

代码释义:如果当前数据库是以test结尾,就进行相应的设置

 

 

 

 

 

 

判断数据库中某个库是否存在:

EXISTS (SELECT 1 FROM master.dbo.sysdatabases WHERE [name] =databasename)

 

 

判断某张表是否存在

select 1 from  sys.tables where OBJECT_ID=OBJECT_ID('TableName',N'U')
   and  EXISTS (SELECT 1 FROM master.dbo.sysdatabases WHERE [name] ='DatabaseName')

 

 

 

判断某张表中某个字段是否存在:

EXISTS (SELECT 1 FROM sys.columns WHERE [object_id] = OBJECT_ID(N'dbo.Tr_Role', N'U')
   AND [name] = N'MembershipNumber')

 

 

 

论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics