相关疑难解决方法(0)

SQL Server - 停止或中断SQL脚本的执行

有没有办法立即停止在SQL Server中执行SQL脚本,如"break"或"exit"命令?

我有一个脚本在开始插入之前执行一些验证和查找,我希望它在任何验证或查找失败时停止.

sql sql-server scripting exit

311
推荐指数
13
解决办法
35万
查看次数

SQLCMD:r <path>其中path是变量

SQLCMD命令是否:r支持非常量文字路径?

例如:

setvar $(path1) '.\script.sql'
:r $(path1) -- SQL01260: A fatal parser error occurred: .
:r '$(path1)' -- SQL01260: A fatal parser error occurred: .
:r "$(path1)" -- SQL01260: A fatal parser error occurred: .
Run Code Online (Sandbox Code Playgroud)

sqlcmd

6
推荐指数
1
解决办法
7025
查看次数

根据配置设置SQLCmd变量

我正在尝试根据配置(调试/发布等)设置SQLCmd变量,但配置下拉列表显示为灰色(参见下图).对于Dev环境,我希望SQLCmd变量为Stage,对于Release环境,Prod.

如果不进入属性,我无法想出一个简单的方法.我们有9个项目,每个项目约6个变量.每次我们进行模式比较时,我们都必须手动更改变量,这非常繁琐.

我们的发布脚本适用于不同的环境,它只是设置模式比较,这使得它非常耗时.

在此输入图像描述

database-project sql-server-2012 visual-studio-2012

6
推荐指数
0
解决办法
793
查看次数

如何有条件地在 ssdt 部署后脚本中包含大型脚本?

在我们的 SSDT 项目中,我们有一个巨大的脚本,其中包含许多用于从旧系统导入数据的 INSERT 语句。使用 sqlcmd 变量,我希望能够有条件地将文件包含到部署后脚本中。

我们目前使用的:r语法包括内联脚本:

IF '$(ImportData)' = 'true'
BEGIN
  :r .\Import\OldSystem.sql
END
Run Code Online (Sandbox Code Playgroud)

这是一个问题,因为 无论是真还是假,脚本都被内联包含$(ImportData),而且文件太大,导致构建速度减慢了大约 15 分钟。

是否有另一种方法有条件地包含此脚本文件,以免减慢构建速度?

sql sql-server sql-server-2014 sql-server-data-tools

5
推荐指数
2
解决办法
3248
查看次数