1

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

:r .\Data\Data.Content.sql

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

SQL72008:未定义变量文档。72006:致命脚本错误:解析 '$('' 时遇到不正确的语法

我发现您可以使用参数 -x 禁用“禁用变量替换”。

但是有没有办法在某个地方定义这个?(部署后脚本?项目设置?)

或者还有其他方法可以解决这个问题吗?

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

亲切的问候,

鲍勃

4

1 回答 1

1

我在SQL Server Data Tools 论坛上发布了同样的问题,有人提出了解决方法。

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

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

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

于 2013-02-06T10:24:34.793 回答