Установление соединения с базой данных в Qt

Установление соединения с базой данных в Qt

Для соединения с базой данных прежде всего нужно активизировать драйвер. для этого вызывается статический метод 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().

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *