【问题标题】:SSDT Register Data Tier ApplicationSSDT 寄存器数据层应用程序
【发布时间】:2013-04-24 13:29:58
【问题描述】:

我在发布 SSDT 数据库项目并将其注册为数据层应用程序时遇到问题。让我解释一下。

我有一个数据库 (A),它通过链接服务器引用另外两个数据库 (B & C)。我已经创建了基于 B 和 C 的项目,并对项目进行了快照,以便为数据库 B 和 C 创建 dacpac。我已经为数据库 A 创建了一个数据库项目,它通过 dacpac 对 B 和 C 进行了数据库引用。我设置了 SQLCMD 变量并修改了 db 项目 ddl 脚本以使用 SQLCMD 变量代替未解析的链接服务器名称。项目构建!

我正在尝试将项目发布为数据层应用程序,但一直收到以下错误消息“注册为 DAC 数据库的数据库必须由 SQL 2005 SP4、SQL 2008 SP2、SQL 2008 R2、SQL 2012 或SQL Azure”。顺便说一句,我正在运行 SQL Server 2012。

我想我会测试我是否可以通过 SSMS 注册为数据层应用程序。在 SSMS 中,“注册为数据层应用程序”选项显示为灰色。因此,我尝试“导出数据层应用程序”并收到一些与链接服务器对象相关的错误。

我的问题是;是否可以部署 SSDT 数据库项目并将其注册为项目使用链接服务器的数据层应用程序,还是我做错了什么?如果可能的话,有人可以提供一些建议。

我已经打破了谷歌寻找答案,所以任何帮助将不胜感激......

【问题讨论】:

  • 你有没有得到这个答案?遇到同样的问题。
  • 我从来没有找到解决这个问题的办法。我在这里问了同样的问题link,不幸的是没有得到快乐。看起来这只是 SSDT 的众多问题之一,这并不是说 SSDT 不是一个好工具;它是;但它确实有问题。如果您比我幸运,请在此线程中删除解决方案链接。谢谢

标签: sql-server sql-server-data-tools database-project


【解决方案1】:

我最近遇到了这个错误,所以我会为遇到这个错误的其他人添加我的解决方案,已经添加到dba stack exchange

结果在我的 publish.xml 中我将 RegisterDataTierApplication 设置为 True。我第一次发布数据库时它运行良好,但后来我得到了同样的错误,因为数据库已经注册为数据层应用程序。

通过设置为 false(或取消选中 gui 中的复选框)它可以正常工作。

【讨论】:

    猜你喜欢
    • 2013-08-04
    • 2012-01-02
    • 2013-03-22
    • 1970-01-01
    • 1970-01-01
    • 2021-08-22
    • 2018-11-11
    • 1970-01-01
    • 2016-06-15
    相关资源
    最近更新 更多