0

有谁知道如何配置 Visual Studio 2012 数据库项目以构建部署 .sql 文件包。

我试图不必使用 .dacpac 作为我唯一的部署选项。

例如,生成所有数据库模式更改的 .sql 文件。

4

1 回答 1

1

如果您尝试自动执行此操作,则需要使用 SQLPackage 命令生成脚本。如果要在 IDE 中执行此操作,请发布数据库并选择生成脚本而不是发布更改的选项。

我通常会先使用 msbuild 构建项目。这将生成一个 dacpac,我可以针对它运行 SQLPackage 命令。

我的批处理文件看起来像这样:

msbuild .\MyDB\MyDB.sqlproj /t:build /p:Configuration="Local"
sqlpackage /a:DeployReport /tsn:FTPROD /sf:.\MyDB\sql\Local\MyDB.dacpac /pr:.\MyDB\Publish\Production.publish.xml /op:.\Release\MyDB-Production.xml
sqlpackage /a:script /tsn:DBServer /sf:.\MyDB\sql\Local\MyDB.dacpac /pr:.\MyDB\Publish\Production.publish.xml /op:.\Release\MyDB-Production.sql

第一行构建项目。第二个创建部署报告,以便我可以轻松查看将要更改的内容。最后生成脚本。您的路径可能会有所不同,因此您需要根据您的环境进行调整。您需要能够访问运行脚本的数据库才能生成脚本。

于 2013-08-27T19:04:12.733 回答