crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> не срабатывает removeDatabase
maint
  опции профиля:
сообщение 2.8.2015, 8:08
Сообщение #1


Участник
**

Группа: Участник
Сообщений: 235
Регистрация: 3.8.2009
Из: Иркутск
Пользователь №: 982

Спасибо сказали: 28 раз(а)




Репутация:   2  


Qt5. Дополнительный коннект, со второй базой.
Код
QSqlDatabase cfgdb;

        cfgdb = QSqlDatabase::addDatabase("QSQLITE", "Rules");
        cfgdb.setDatabaseName(name);

        if (!cfgdb.open()) {
            return false;
        }
        QSqlQuery q(cfgdb);
        QString sql;

        sql = "SELECT " + rec.value("name").toString() + " FROM " + rec.value("pkey").toString();
        if (!q.exec(sql)) {
            return false;
        }
        if (!q.first()) {
           return false
        } else {
            QString a, b;
            a = rec.value("value").toString();
            b = q.value(0).toString();
            if (a == b)
                retcode = true;
            else
                retcode = false;
        }
        q.finish();
        q.clear();

        cfgdb.close();
        QSqlDatabase::removeDatabase("Rules");

В принципе все отрабатывает, но при вызове removeDatabase выдается диагностика
QSqlDatabasePrivate::removeDatabase: connection 'Rules' is still in use, all queries will cease to work.


Сообщение отредактировал maint - 2.8.2015, 8:12
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 25.11.2024, 13:50