Qt5: QSqlDatabase::close()

153
28 декабря 2020, 23:30

Как правильно закрыть за собой соединение с базой данных?

    void DestroyConnection()
    {
        QSqlDatabase::close();
    }

Данный код компилятор считает ошибочным и ругается так:

.../dialog.h:83: ошибка: call to non-static member function without an object argument

Answer 1

Предполагаю, что вы создаёте соединение с БД через вызов статической член-функции addDatabase, которая в свою очередь возвращяем конкретный объект:

QSqlDatabase db = QSqlDatabase::addDatabase(...);

Следоветельно чтобы закрыть соединение необходимо вызвать:

db.close();

Также есть статическая функция QSqlDatabase::removeDatabase(), удобная для удаления соединения по-умолчанию (когда вы не указали явно имя соединения).

READ ALSO
Как понять что ввод начался? с++

Как понять что ввод начался? с++

Есть два потока, когда начинается ввод в одном требуется остановить другой поток, как понять что ввод в первом потоке началсяЕсли использовать:

117
Дублирование чисел в wstring

Дублирование чисел в wstring

Необходимо продублировать все числа в строке, помогите исправить баг с бесконечным добавлением первого найденного числа

111
pts и вычисление времени видео

pts и вычисление времени видео

1Пытаюсь вычислить текущее время видео и получаю ошибку: pts не является членом "AVStream"

94