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: 在这里输入图像说明