Здравствуйте, гость ( Вход | Регистрация )
|
FantasyOr |
16.3.2011, 15:34
Сообщение
#1
|
|
Студент ![]() Группа: Участник Сообщений: 75 Регистрация: 13.8.2010 Пользователь №: 1956 Спасибо сказали: 4 раз(а) Репутация: 0
|
Здравствуйте. Начал работать с базами данных.
Пример в книге гласит - создайте подключение к базе в отдельной функции в main.cpp, а потом можете по всему приложению где угодно выполнять запросы, заполнять модели и прочее. Не понятен собственно момент подключения QSqlQuery к QSqlDatabase, сначала думал что в QApplication хранится соединение и оттуда подключается, но его там нет. А вопрос возник в следствии надобности делать коммиты и роллбеки, а эти функции запускаются у конкретных экземпляров QSqlDatabase. Подскажите пожалуйста: где брать объект QSqlDatabase в описанной выше схеме, для вызова у него функций commitTransaction ... |
|
|
|
![]() |
|
Litkevich Yuriy |
18.3.2011, 22:50
Сообщение
#2
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
Цитата(Kagami @ 16.3.2011, 23:03) Link он сохраняется где-то в памяти компьютера класс QSqlDatabase - именованный одиночка (в оригинале - "Value class"). поэтому соединение создаётся через статическую функцию-член, и получают соединение по имени также через статическиую функцию-член. |
|
|
|
FantasyOr не могу понять принципа работы 16.3.2011, 15:34
Kagami После того как ты создаешь объект QSqlDatabase с п... 16.3.2011, 21:03
FantasyOr да, красиво.
QSqlDatabase::database().driver()-... 17.3.2011, 10:19
Kagami Цитата(Litkevich Yuriy @ 18.3.2011, 22:50... 18.3.2011, 23:31
PAFOS А еще можно держать подключения к нескольких серве... 24.3.2011, 17:52![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 30.12.2025, 12:08 |