Здравствуйте, гость ( Вход | Регистрация )
|
zloyGamer |
6.12.2009, 22:02
Сообщение
#1
|
|
Студент ![]() Группа: Участник Сообщений: 22 Регистрация: 18.7.2009 Пользователь №: 917 Спасибо сказали: 0 раз(а) Репутация: 0
|
подскажите как поправить, или что тут может быть не так, к примеру есть простая форма с вьюхой QSqlQueryModel m_model;
далее если выполнить: то FB вначале выдает что было 1 соединение а потом 0 а если выполнить какието операции с бд: то FB вначале выдает что было 1 соединение а после db.close(); всеравно остается 1 соединение, но из приложения уже нельзя выполнять запросы а если далее опять вызвать db.open(); то FB выдает что уже установлено 2 соединения, и т.д. все соединения обрываются тока после закрытия приложения, как это можно исправить? что можно сделать чтобы соединение корректно закрывалось? |
|
|
|
![]() |
|
Kagami |
6.12.2009, 22:33
Сообщение
#2
|
|
Старейший участник ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 601 Регистрация: 2.2.2009 Пользователь №: 523 Спасибо сказали: 101 раз(а) Репутация: 9
|
У QSqlQuery есть метод finish(), у QSqlQueryModel есть метод query(), который возвращает хранящийся в этой модели объект QSqlQuery. Если у тебя есть запросы, которые не уничтожаются после выхода из функции (т.е. создаются динамически), то для них было бы неплохо вызывать метод finish().
|
|
|
|
|
zloyGamer |
7.12.2009, 21:54
Сообщение
#3
|
|
Студент ![]() Группа: Участник Сообщений: 22 Регистрация: 18.7.2009 Пользователь №: 917 Спасибо сказали: 0 раз(а) Репутация: 0
|
Цитата(Kagami @ 6.12.2009, 22:33) Link У QSqlQuery есть метод finish(), у QSqlQueryModel есть метод query(), который возвращает хранящийся в этой модели объект QSqlQuery. Если у тебя есть запросы, которые не уничтожаются после выхода из функции (т.е. создаются динамически), то для них было бы неплохо вызывать метод finish(). ща проверил: m_model.query().finish(); db.close(); db.removeDatabase("test"); тож самое получается, подключение(я) незакрываются, т.е. закрываются тока при закрытии самого приложения или в случае если небыло запросов после открытия бд. что еще можно попробывать? |
|
|
|
zloyGamer незакрывается подключение к БД после запросов 6.12.2009, 22:02
MoPDoBoPoT Попробовать сделать также, как в доке:
{
QSqlDat... 7.12.2009, 22:19
zloyGamer Цитата(MoPDoBoPoT @ 7.12.2009, 22:19) Поп... 8.12.2009, 15:24
MoPDoBoPoT Дело скорей всего в драйвере, ибо у меня с Oracle ... 8.12.2009, 15:54
zloyGamer Цитата(MoPDoBoPoT @ 8.12.2009, 15:54) Дел... 8.12.2009, 16:44
SABROG Можно посмотреть отладчиком, что тут происходит:
... 8.12.2009, 17:25
zloyGamer да дествительно видимо что то не так идет в функци... 9.12.2009, 20:06![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 2.1.2026, 15:37 |