На этом шаге рассмотрим соединение с базой данных в библиотеке Qt.
Для соединения с базой данных нужно активизировать драйвер. Для этого вызывается статический метод QSqlDatabase::addDatabase(), в который передается строка, обозначающая идентификатор драйвера СУБД.
Для подключения к базе данных, нужно указать следующие параметры:
Методы должны вызываться из объекта, созданного с помощью статического метода QSqlDatabase::addDatabase().
Соединение с базой данных осуществляется методом QSqlDatabase::open(). Значение, возвращаемое им, рекомендуется проверять. В случае возникновения ошибки, информацию о ней можно получить с помощью метода QSqlDatabase::lastError(), который возвращает объект класса QSqlError. Его содержимое можно вывести на экран с помощью метода qDebug(). Если нужно получить строку с ошибкой, то можно вызвать метод text() объекта класса QSqlError.
После подключения объект класса QSqlDatabase позволяет получить метаинформацию о базе данных. Следующий пример при помощи метода QSqlDatabase::tables() получает информацию об именах всех таблиц, которые находятся в базе данных и отображает их:
QStringList lst = db.tables(); foreach (QString str, lst) { qDebug() << "Table:" << str; }
На следующем шаге рассмотрим пример соединения с базой данных.