Соединение с базой данных с помощью Qt
Оглавление
- Программирование баз данных с помощью Qt
- Использование QtSql в библиотеке Qt
- Соединение с базой данных с помощью Qt
- Исполнение команд SQL в Qt
- Классы SQL-моделей для Интервью
Для соединения с базой данных прежде всего нужно активизировать драйвер. для этого вызывается статический метод QSqlDatabase::addDatabase(). В него нужно передать строку, обозначающую идентификатор драйвера СУБД.
Для того чтобы подключиться к базе данных, потребуется четыре следующих параметра:
- имя базы данных — передается в метод QSqlDatabase:: setDatabaseName();
- имя пользователя, желающего к ней подключиться, — передается в метод QSqlDatabase::setUserName();
- имя компьютера, на котором размещена база данных, — передается в метод QSqlDatabase::setHostName();
- пароль — передается в метод QSqlDatabase::setPassword().
static bool createConnection()
{
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
db.setDatabaseName("addressbook");
db.setUserName("elton");
db.setHostName("epica");
db.setPassword("password");
if (!db.open()) {
qDebug() << "Cannot open database:" << db.lastError();
return false;
}
return true;
}
Методы должны вызываться из объекта, созданного с помощью статического метода QSqlDatabase::addDatabase().
Само соединение осуществляется методом QSqlDatabase::open(). Значение, возвращаемое им, рекомендуется проверять. В случае возникновения ошибки, информацию о ней можно получить с помощью метода QSqlDatabase::lastError(), который возвращает объект класса QSqlError.
Его содержимое можно вывести на экран с помощью qDebug(). Если у вас возникла необходимость получить строку с ошибкой, то нужно вызвать из объекта класса QSqlError метод text().
Читать далее: Исполнение команд SQL в Qt