微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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...

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

原文地址:https://www.jb51.cc/mssql/83336.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐