【问题标题】:Using VS2012's SQL Server Data Tools without VIEW DEFINITIONS permission在没有 VIEW DEFINITIONS 权限的情况下使用 VS2012 的 SQL Server Data Tools
【发布时间】:2014-02-18 14:49:01
【问题描述】:

我正在尝试使用 Visual Studio 2012 比较两个数据库。但是,托管我的数据库的 SQL 实例被极度锁定,我的用户无权访问 VIEW DEFINITIONS 权限。

我在 Visual Studio 中遇到这些错误:

The target database schema could not be retrieved. The reverse engineering operation cannot continue because you do not have View Any Definition permission on the server '(URL here)'.

Comparing the master database requires VIEW ANY DEFINITION permission.

但是,我可以使用 Red-Gate SQL Compare 和 XSQL 等工具来比较数据库。我不想购买这个软件,我宁愿使用 Visual Studio 2012,因为我已经有许可证......我该如何克服这个问题?有什么方法可以在没有查看任何定义权限的情况下使用 SQL Server Data Tools?

【问题讨论】:

    标签: sql-server visual-studio-2012 sql-server-2012 sql-server-2012-datatools


    【解决方案1】:

    您需要在 SQL server 中将db_owner permission 提供给用户

    SQL 服务器
    安全
    登录
    特定用户
    用户映射
    具体数据库
    检查 db_owner
    好的

    【讨论】:

      【解决方案2】:

      奇怪的是,重新启动我的 Visual Studio 为我解决了这个问题。

      【讨论】:

        【解决方案3】:

        在数据库级别而不是实例级别运行比较可以解决问题。

        【讨论】:

        • 这是什么意思?
        • 抱歉,这晚了两年,但据我所知,Visual Studio 2012 允许您选择希望比较运行的高度。不幸的是,我为整个实例设置了我的设置,这意味着我正在对每个数据库进行比较。我将比较向下移动,只在我感兴趣的特定数据库上运行,这个问题就解决了。
        猜你喜欢
        • 1970-01-01
        • 2021-12-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-12-14
        • 1970-01-01
        相关资源
        最近更新 更多