我有一个在多个环境中运行的查询脚本工具,其中包含对运行脚本的数据库的许多脚本内引用。我不想在运行时手动编辑每个实例,而是想在脚本的顶部设置一个变量,这样就可以分配一次数据库值。
我会声明变量:
DECLARE @db VARCHAR(25) = 'some database name'
然后我想在表路径的引用中使用该变量,例如:
SELECT 1 FROM @db.sys.partitions
这样的事情可能吗?如果是这样,它怎么可能被构建?感谢。
答案 0 :(得分:0)
以下动态SQL应该适合您:
declare @sql_command nvarchar(max)
declare @db varchar(25)
select @db = 'some database name'
select @sql_command = 'SELECT top 1 * FROM '+ @db + '.sys.partitions'
execute sp_executesql @sql_command