运行脚本 - 检查SQL Server 2008数据库是否存在,如果不存在则替换(USE Database
)
我在很多服务器上运行脚本。但是,某些数据库名称并不总是相同,因此我们必须编辑“使用数据库”
if DB_ID('sports') is not null -- check to see if exists
use sports
else
use SportsLive`-- use the correct one
总是一个人不会存在......
Msg 911,Level 16,State 1,Line 15
数据库' SportsLive'不存在。确保正确输入名称。
有什么方法吗?
答案 0 :(得分:0)
use [xxx]必须在代码的开头,所以
如果您使用此查询的内容
您需要将其余代码放在一起
使用[xxx] ...'比如示例
DECLARE @i nvarchar(50)
DECLARE @a nvarchar(50)
SET @i =DB_NAME(coalesce((db_id('sports')),(db_id('SportsLive'))))
SELECT @i
SET @a= 'USE ['+@i+']
select * from [your table]'
EXEC (@a)