【问题标题】:odbc32 and SQLBrowseConnect Helpodbc32 和 SQLBrowseConnect 帮助
【发布时间】:2010-09-06 13:49:41
【问题描述】:

我正在调用 odbc32.dll (SQLBrowseConnect) 以返回 sql server 上的数据库列表。

通过运行跟踪,我可以看到正在执行的查询是

select name from master..sysdatabases where has_dbaccess(name)=1

如果我传递的凭据不是 sa 用户,它只会返回系统数据库。无论如何我可以使用 SQLBrowseConnect 与另一个用户(其默认数据库也不能保证是主数据库)返回服务器上的所有数据库?

我也想避免 smo 对象

【问题讨论】:

    标签: sql odbc smo


    【解决方案1】:

    查询在没有系统管理员凭据的情况下也能正常工作。

    您需要确保您/您使用的凭据至少在您需要连接的每个数据库的public database role 中。

    如您所料,select name from master..sysdatabases 会返回所有数据库名称,而与您对数据库的访问无关。

    【讨论】:

      猜你喜欢
      • 2011-06-14
      • 2011-06-03
      • 2011-11-02
      • 2011-06-02
      • 2011-01-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多