Подсказки на компьютерную тематику

Можно подсмотреть, если забыли…

Как подключить базу данных SQLite к программе на Qt

Простое подключение базы данных SQLite в коде C++ на Qt

    Для подключения к существующей базе данных в коде надо прописать:

  • static QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL3");//подключение драйвера для базы данных SQLite
  • этот код надо указать в начале файла, и вне функций. Вместо static можно использовать слово extern – это создает глобальную переменную db, видимую в одном или всех файлах соответственно
  • db.setHostName(DBHOSTNAME);//имя компьютера - обычно не требуется
  • на Ubuntu значение DBHOSTNAME можно получить, введя в терминале hostname
  • db.setDatabaseName(DBNAME);//адрес подключаемой БД на компьютере
  • db.setUserName(DBUSERNAME);//имя пользователя компьютера - обычно не требуется
  • на Ubuntu значение DBUSERNAME можно получить, введя в терминале whoami
  • db.setPassword(DBPASSWORD);//пароль - обычно не требуется
  • db.open();//открывает базу данных, указанную в db.setDatabaseName()
    Для проверки корректной работы с БД можно ввести, предварительно подключив #include “QDebug”:

  • qDebug() <<"available drivers="<<QSqlDatabase::drivers();//список подключаемых баз данных
  • qDebug() <<"connection DB exists="<< db.isValid();// если соединение осуществлено успешно
  • qDebug() <<"errors="<<db.lastError().text();//список возможных ошибок

Как подключить базу данных SQLite к программе на Qt

Простое подключение базы данных SQLite в коде C++ на Qt

    Для подключения к существующей базе данных в коде надо прописать:

  • static QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL3");//подключение драйвера для базы данных SQLite
  • этот код надо указать в начале файла, и вне функций. Вместо static можно использовать слово extern – это создает глобальную переменную db, видимую в одном или всех файлах соответственно
  • db.setHostName(DBHOSTNAME);//имя компьютера - обычно не требуется
  • на Ubuntu значение DBHOSTNAME можно получить, введя в терминале hostname
  • db.setDatabaseName(DBNAME);//адрес подключаемой БД на компьютере
  • db.setUserName(DBUSERNAME);//имя пользователя компьютера - обычно не требуется
  • на Ubuntu значение DBUSERNAME можно получить, введя в терминале whoami
  • db.setPassword(DBPASSWORD);//пароль - обычно не требуется
  • db.open();//открывает базу данных, указанную в db.setDatabaseName()
    Для проверки корректной работы с БД можно ввести, предварительно подключив #include “QDebug”:

  • qDebug() <<"available drivers="<<QSqlDatabase::drivers();//список подключаемых баз данных
  • qDebug() <<"connection DB exists="<< db.isValid();// если соединение осуществлено успешно
  • qDebug() <<"errors="<<db.lastError().text();//список возможных ошибок