Название: Подключение к MSSql без указания базы данных Отправлено: pichini от Май 24, 2010, 16:10 Всем привет!
Нашел информацию как подключиться к конкретной базе, все работает на ура: Код
Но не могу разобраться каким образом настроить подключение для создания базы на сервере, либо для проверки ее существования. Eсли опустить параметр DATABASE или указать DATABASE=master, то QSqlDatabase::open() ошибок не выдает, но при попытке выполнить запрос типа: Код выдает ошибку: QSqlQuery::exec: database not open Кто-нибудь знает как решить задачу? Название: Re: Подключение к MSSql без указания базы данных Отправлено: pichini от Май 25, 2010, 10:50 Вообщем так, похоже я не до конца понимаю как работает QSqlQuery.
Если делать аналогично примеру из доки, то получим ошибку: Код
Если же создавать QSqlQuery следующим образом: Код
то все ок. В чем суть? хотелось бы разобряться в деталях. Название: Re: Подключение к MSSql без указания базы данных Отправлено: MoPDoBoPoT от Май 25, 2010, 11:59 В чем суть? хотелось бы разобряться в деталях. QSqlQuery myquery() - используется соединение по умолчаниюQSqlQuery myquery(*db) - используется, переданное в конструктор, соединение (кстати, в хранении указателя/ссылки на соединение нет необходимости, его можно получить через статический метод QSqlDatabase::database(), иначе можно столкнуться с проблемой удаления этого соединения) Скорей всего ты создавал/добавлял соединение не по умолчанию (указал в методе QSqlDatabase::addDatabase() помимо имени драйвера еще имя соединения). |