SSDT后部署脚本(使用JQuery进行数据转储) - 禁用变量替换

时间:2013-01-30 10:48:12

标签: sql-server visual-studio sqlcmd sql-server-data-tools

在我的SSDT项目中,我有一个部署后脚本,其中包含一个脚本文件。

:r。\ Data \ Data.Content.sql

文件Data.Content.sql是数据库的转储(插入语句),它包含'var $ sameHeightDivs = $(''。product-tile-region'');'等内容。该数据库包含JQuery脚本。所以我收到以下错误:

SQL72008:未定义可变文档。 要么 72006:致命脚本错误:解析'$(''

时遇到错误的语法

我发现你可以禁用'禁用 使用参数-x。

进行变量替换

但有没有办法在某处定义? (部署后脚本?项目设置?)

还是有另一种方法可以解决这个问题吗?

仅供参考:创建转储我使用Microsoft.SqlServer.Management.Smo.Scripter。

亲切的问候,

鲍勃

1 个答案:

答案 0 :(得分:1)

我在SQL Server Data Tools forum发布了相同的问题,其中有人找到了解决方法。

生成脚本后,我会搜索并替换$ char。

function SearchAndReplace($file) {
    (Get-Content $file) | 
    Foreach-Object {$_ -replace "\$\(", "' + CHAR(36) + '("} | 
    Set-Content $file
}

我包含了'('以确保限制范围(对JQuery选择器)。