SQL Server':setvar'错误

我正在尝试在T-SQL中创build一些脚本variables,如下所示:

/* Deployment script for MesProduction_Preloaded_KLM_MesSap */ GO SET ANSI_NULLS, ANSI_PADDING, ANSI_WARNINGS, ARITHABORT, CONCAT_NULL_YIELDS_NULL, QUOTED_IDENTIFIER ON; SET NUMERIC_ROUNDABORT OFF; GO :setvar DatabaseName "MesProduction_Preloaded_KLM_MesSap" 

但是,当我运行这个时,我得到一个错误,说明'不正确的语法附近':'。 我究竟做错了什么?

:setvar只能在SQL命令模式下工作,所以你可能在pipe理工作室的正常的SQL执行中,并没有交换到命令模式。

这可以通过SQL Server Management Studio中的用户界面进入“查询”菜单并select“SQLCMD模式”来完成。

尝试replace:setvar DatabaseName "MesProduction_Preloaded_KLM_MesSap"

有:

 USE [MesProduction_Preloaded_KLM_MesSap] GO 

FOR SQL2012:

请转到:tools / options / Query Execution并默认选中,在SQLCMD模式下打开新的查询。

点击“新build查询”button并确保variables定义被突出显示,您的脚本现在应该正确运行。

之前的版本:

http://blog.sqlauthority.com/2013/06/28/sql-server-how-to-set-variable-and-use-variable-in-sqlcmd-mode/

只需在SQL Server Management Studio中启用sqlcmd模式,如下图所示。

在这里输入图像说明