Здравствуйте, gok, Вы писали:
gok>Сделал соединение через ODBC DSN, в которой прописано имя базы данных.
gok>Теперь надо извернуться так, чтобы программно переключаться с базы на базу.
gok>MS SQL на доменном сервере, т.е. нужен логин на сервер, потом в MS SQL.
Для доступа к SQL Server необходим логин на самом SQL Server с правами на БД. Причем может использоваться аутентификация как доменная, так и SQL. Не совсем понятно, зачем нужен логин на сервер, а потом MS SQL и о каком сервере идет речь.
gok>Вопрос про DSN: как он исхитряется не логинится на сервер, а сразу работает с базой данных?
А вы настроили DSN на локальный сервер или удаленный? Не указав параметры аутентификации вы смогли подключиться к БД?
gok>Пробовал программно использовать как то так:
gok>gok>CDatabase thisDb;
gok>CString dbName(_T("МОЙТЕСТ"));
gok>BOOL openRes = thisDb.OpenEx(_T("Driver={SQL Server Native Client 11.0};Server=мойсервер;Database=") + dbName + ("AttachDbFilename=.;Trusted_Connection=No;Uid=") + username + _T(";Pwd=") + pass_word + _T(";"));
gok>
gok>а соединение выбрасывает диалог и спрашивает имя-пароль на вход на сервер. Можно ли этого избежать?
CDatabase — это случайно не класс MFC?