在“sqlcmd”中使用脚本变量

日期: 2010-12-26 作者:Ray RankinsPaul T. BertucciChris GallelliAlex T. Silverstein翻译:冯昀晖 来源:TechTarget中国 英文

接上文:SQL Server命令行工具简介、执行“sqlcmd”命令行工具   “sqlcmd”提供了在“sqlcmd”输入文件或者脚本中使用变量的方法。这些脚本变量可以通过“sqlcmd”参数或者“sqlcmd”脚本中的“set”命令复制。为了展示脚本中变量的用法,我们来修改一下前面备份的示例,把要备份的数据库作为一个变量。新的名为“c:BackupDatabase.sql”的输入文件应该被创建,它应该包含如下命令:   BACKUP DATABASE $(DatabaseToBackup)   TO DISK = ‘c:$(DatabaseToBackup).bak’   前面例子中的变量……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

接上文:SQL Server命令行工具简介执行“sqlcmd”命令行工具

  “sqlcmd”提供了在“sqlcmd”输入文件或者脚本中使用变量的方法。这些脚本变量可以通过“sqlcmd”参数或者“sqlcmd”脚本中的“set”命令复制。为了展示脚本中变量的用法,我们来修改一下前面备份的示例,把要备份的数据库作为一个变量。新的名为“c:BackupDatabase.sql”的输入文件应该被创建,它应该包含如下命令:

  BACKUP DATABASE $(DatabaseToBackup)

  TO DISK = ‘c:$(DatabaseToBackup).bak’

  前面例子中的变量被命名为“DatabaseToBackup”。脚本变量都使用“$”标识符。这些变量只存储在执行期间,并在执行时被简单地替换。这使得变量可以在引号内指定,如果必要的话。“-v”选项被用来在命令提示符中给变量复制,如下面的示例所示,它备份了“model”数据库:

  sqlcmd -S (local) -E -i”C:BackupDatabase.sql” -v DatabaseToBackup = model

  如果在脚本中存在多个变量,它们都可以在“-v”参数后赋值。这些变量不应该被逗号或者分号这类分隔符分离。脚本变量还可以被在脚本内复制,需要使用“:SETVAR”命令。前面备份中的输入文件可以被修改为在脚本中给“DatabaseToBackup ”变量赋值:

  :SETVAR DatabaseToBackup Model

  BACKUP DATABASE $(DatabaseToBackup)

  TO DISK = ‘c:$(DatabaseToBackup).bak’

  使用了变量,“sqlcmd”命令以及许多可用选项的脚本可能变得非常复杂,可以使你的管理工作更轻松。本段示例描绘了“sqlcmd”的一些基本特色,包括“osql”中可用功能之外的一些功能特色。

相关推荐