我正在研究一个SQL脚本,我需要在多个停靠点中引用数据库名称。此脚本将用于针对不同的数据库运行,因此我希望将数据库名称存储在变量中,因此您只需在脚本中的一个位置更改名称。
我对此脚本的主要问题是使用USE命令。所以代码看起来像。
DECLARE @DBName varchar(50)
SET @DBName = '[master]'
USE @DBName
SQL不喜欢这个。有没有办法做到这一点。
感谢您的帮助。
答案 0 :(得分:0)
你可以做这样的事情
declare @dbname varchar(250)
declare @Sql varchar(250)
set @dbname='PMDB'
SELECT @Sql ='select * from ' + @dbname + '.dbo.Account'
EXEC(@Sql)
答案 1 :(得分:0)
我这样做的方式并不是很优雅,但它运作得很好
if @DBName = 'DB1'
<query with DB1>
else
<query with DB2>