Qt Connessione di base e query


Esempio

La classe QSqlDatabase fornisce un'interfaccia per l'accesso a un database tramite una connessione. Un'istanza di QSqlDatabase rappresenta la connessione. La connessione fornisce l'accesso al database tramite uno dei driver di database supportati. Assicurati di aggiungere

QT += SQL 

nel file .pro. Si supponga che un DB SQL denominato TestDB con un countryTable contine la colonna successiva:

| country |
-----------
| USA     |

Per interrogare e ottenere dati SQL da TestDB:

#include <QtGui>
#include <QtSql>
 
int main(int argc, char *argv[])
{
    QCoreApplication app(argc, argv);

    QSqlDatabase db = QSqlDatabase::addDatabase("QPSQL"); // Will use the driver referred to by "QPSQL" (PostgreSQL Driver) 
    db.setHostName("TestHost");
    db.setDatabaseName("TestDB");
    db.setUserName("Foo");
    db.setPassword("FooPass");
    
    bool ok = db.open();
    if(ok)
    {
        QSqlQuery query("SELECT country FROM countryTable");
        while (query.next())
        {
          QString country = query.value(0).toString();
          qWarning() << country; // Prints "USA"
        }
    }

    return app.exec();
}