我遇到了与this非常相似的问题。我有一个.dbproj Visual Studio数据库项目。它在SQL Server Express中部署得很好。现在我想将它部署到SQL Azure - 我更改了连接参数,但部署失败,并带有以下文本:
C:\ Program Files \ MSBuild \ Microsoft \ VisualStudio \ v10.0 \ TeamData \ Microsoft.Data.Schema.TSqlTasks.targets(120,5):错误Deploy01234:无法确定目标数据库架构提供程序。部署无法继续。 完成执行任务“SqlDeployTask” - FAILED。
是否支持将.dbproj项目部署到SQL Azure?如何使Visual Studio将数据库部署到SQL Azure?除了使用Azure门户手动重新创建数据库之外,还有哪些其他方法可以获得或多或少相同的结果?
答案 0 :(得分:10)
如果您使用的是Visual Studio 2012,则可以创建数据库项目并转到“属性” - 在“项目设置”选项卡中将其目标平台设置为SQL Azure。您还可以配置dacpac输出的设置。使用此文件可以直接导入为新的SQL Azure数据库。
答案 1 :(得分:5)
据我所知,Windows Azure仍然不支持数据库项目。您可以将项目部署到本地SQL Server,然后使用“生成脚本”功能将数据库移植到SQL Azure。请参阅此link。
答案 2 :(得分:4)
一个简单的解决方案是在本地创建数据库,并使用SQL Azure Migration Wizard进行迁移到SQL Azure。它只需点击几下即可正常工作(并可修复常见错误)。
答案 3 :(得分:2)
数据库项目不适用于SQL Azure。我所做的是在部署之前,在本地服务器上创建一个全新的数据库(以确保它是最新的没有开发脚本),然后使用RedGate SQL Compare将该数据库同步到Azure。我首先使用RedGate SQL Azure Backup进行备份。
答案 4 :(得分:1)
当我们第一次构建数据库项目时,SQLAzure仍在经历其身份危机,并且不知道它想成为什么。 ;)
DBProjects支持功能与SQLAzure的重要超集。因此,它很可能会创建不会针对SQLAzure运行的脚本。
我知道接管DBProject工具的团队正在考虑限制数据库项目生成器输出与SQLAzure兼容的脚本,但我不知道他们有多远,或者他们是否决定继续。
我回应上面的dunnry的建议并使用SQL Azure Migration Wizard或Jeremy's并使用SQL 2008 R2并生成与Azure兼容的脚本。