VS2012 Post-Deployment脚本引用了其他几个脚本
我在VS2012
创build了一个数据库项目。 我添加了数据库结构。 它可以很好地发布和比较数据库。
现在发布我想自动加载几个表与默认数据。
我使用SQL Management Studio生成的INSERT
语句创build了五个脚本文件。 他们被添加到我的数据库项目中的脚本文件夹。
然后我设置BuildAction=PostDeploy
。 这工作正常。 但由于某种原因,只能将一个脚本设置为PostDeploy
….
我意识到我可以将所有脚本移动到一个文件中。 但我有很多,真的很想分组在不同的文件,以维持一些秩序。
然后我创build了一个PostDeploy.sql
文件,并试图从那里引用所有其他脚本文件。 文件头给出了方向:
Post-Deployment Script Template ---------------------------------------------------------------------------- This file contains SQL statements that will be appended to the build script. Use SQLCMD syntax to include a file in the post-deployment script. Example: :r .\myfile.sql
所以我写我的文件:
:r .\MyScript1.sql :r .\MyScript2.sql :r .\MyScript3.sql :r .\MyScript4.sql :r .\MyScript5.sql
该文件抱怨错误的语法。
事实certificate,Visual Studio愚弄了我错误的语法警告! 我的设置是完全有效的。
要避免警告,请右键单击文件中的任意位置,然后select“执行设置 – SQLCMD模式”。
还有一个名为SQLCMD模式的工具栏button也在做同样的事情。
下面是菜单项,以防您找不到工具栏button: