Connessione a PostgreSQL con Qt
Qt offre già parecchi driver per database; basta includere sql nel file del progetto per accedere a tutte le classi:
QT += core gui sql
Però, in determinati casi, è comunque necessario installare delle librerie; ed è il caso di PostgreSQL!
Infatti, avendo il database installato su un altro pc, sul mio pc ho dovuto installare libpq.
Su Arch Linux:
# pacman -S libpqxx
Detto ciò, questo il codice:
#include "mainwindow.h"
#include "ui_mainwindow.h"
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent),
ui(new Ui::MainWindow) {
ui->setupUi(this);
}
MainWindow::~MainWindow() {
delete ui;
}
void MainWindow::on_pushButton_clicked() {
QSqlDatabase db = QSqlDatabase::addDatabase("QPSQL");
db.setHostName("192.168.1.31");
db.setDatabaseName("test");
db.setUserName("postgres");
db.setPassword("9211");
bool isOpened = db.open();
if (isOpened) {
QSqlQuery query("SELECT * FROM persone");
while (query.next()) {
qDebug() << "ID: " << query.value("id").toString()
<< ";EMAIL: " << query.value("email").toString();
}
} else {
qDebug() << db.lastError().text();
}
}
Enjoy!
qt databse postgresql sql qsqldatabase qsqlquery libpq
Commentami!