sql-server – 在SQL Server中有任何方法可以让’use database’命令接受变量

前端之家收集整理的这篇文章主要介绍了sql-server – 在SQL Server中有任何方法可以让’use database’命令接受变量前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想编写一个“通用”脚本来操作许多数据库. ‘use databasename’命令将分发在脚本体中.我宁愿在脚本的顶部显示数据库名称信息.理想情况下:
declare @db varchar(100)
set @db = 'data_in'
use @db

这失败了.也许吧

declare @db varchar(100)
set @db = 'data_in'
exec ('use '+@db)

这会执行,但可能只在字符串中的查询上下文中更改数据库.
那么有没有其他方法可以将整个脚本放入字符串并以这种方式执行它,即.治愈比疾病更糟糕?

解决方法

查看 SQLCMD中的脚本变量.

这使您可以在表单中将变量放入脚本中:

USE $(db1_name)
...some code...

USE $(db2_name)
...some code...

并且从环境变量,运行时提供的参数或硬编码值分配中插入变量值.

猜你在找的MsSQL相关文章