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 に答える