代码之家  ›  专栏  ›  技术社区  ›  user167698

如何将Visual Studio 2012数据库项目配置为生成部署.sql文件

  •  0
  • user167698  · 技术社区  · 11 年前

    有人知道如何配置Visual Studio 2012数据库项目以生成部署.sql文件包吗。

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

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

    1 回复  |  直到 11 年前
        1
  •  1
  •   Peter Schott    11 年前

    如果您试图自动执行此操作,则需要使用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
    

    第一行构建项目。第二个创建了一个部署报告,这样我就可以很容易地看到要更改的内容。最后一个生成脚本。您的路径可能会有所不同,因此需要根据您的环境进行适当的调整。为了生成脚本,您需要能够访问将运行脚本的数据库。