ama*_*eur 14 sql database sql-server sql-server-2008
我正在为sql server 2008编写一个sql脚本,我在开头放置一个use语句,指定应该运行脚本的数据库:
use [my_database]
Run Code Online (Sandbox Code Playgroud)
由于我有不同的环境,其中存在相同的数据库,例如dev,qa,prod,我有什么办法可以在脚本中为脚本指定环境,可以是服务器名称或IP地址,也可以是任何其他机制.
Fil*_*Vos 25
您可以将SQL Management Studio置于SQLCMD模式,并使用该:CONNECT myserver语句指定服务器.
您可以通过单击下面的图片中的选项来打开命令模式

然后你的脚本会是这样的
:CONNECT devserver
use [my_database]
SELECT * FROM my_table
Run Code Online (Sandbox Code Playgroud)
您甚至可以在执行期间使查询窗口切换服务器
:CONNECT devserver
use [my_database]
SELECT * FROM my_table
GO
:CONNECT uatserver
use [my_database]
SELECT * FROM my_table
Run Code Online (Sandbox Code Playgroud)
要连接特定用户和密码,您可以按如下方式指定
:CONNECT devserver -U myUser -P myPassword
use [my_database]
SELECT * FROM my_table
Run Code Online (Sandbox Code Playgroud)
实际上,您可以指定许多选项,这些选项在msdn上有详细记录.
这是一个CONNECTION设置,而不是脚本中的参数。
如果需要,您可以通过批处理文件或 powershell 脚本在不同环境中运行相同的脚本,或者您可以设置链接服务器,但您不能只是说
USE SomeOtherServer
还有安全和网络方面的影响。
| 归档时间: |
|
| 查看次数: |
22265 次 |
| 最近记录: |