Справка по odbc32 и SQLBrowseConnect - PullRequest
       4

Справка по odbc32 и SQLBrowseConnect

0 голосов
/ 06 сентября 2010

Я обращаюсь к odbc32.dll (SQLBrowseConnect), чтобы вернуть список баз данных на сервере sql.

При запуске трассировки я вижу, что выполняемый запрос -

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

Если учетные данные, которые я передаю, не являются пользователем sa, он возвращает только системные базы данных.Могу ли я в любом случае использовать SQLBrowseConnect с другим пользователем (чья база данных по умолчанию также не гарантируется как главная база данных), чтобы вернуть все базы данных на сервере?

Также я хочу избежать объектов smo

1 Ответ

0 голосов
/ 06 сентября 2010

Запрос работает без учетных данных sysadmin.

Вы должны убедиться, что вы / учетные данные, которые вы используете, по крайней мере в роли общедоступной базы данных в каждой из баз данных, к которым вам нужно подключиться.

Как вы могли догадаться, выберите имя из master..sysdatabase возвращает все имена баз данных независимо от вашего доступа к БД.

...