2017-01-17 3 views
0
QSqlDatabase db; 
DBCONNECTION(QString conName) 
{ 
    db.addDatabase("QMYSQL",conName); 
    db.setDatabaseName("mitsubishi"); 
    db.setHostName("localhost"); 
    db.setUserName("root"); 
    db.setPassword(""); 
    qDebug()<<db.connectionName()<<conName; 

} 

db.connectionName gibt leere Zeichenfolge aber CONNAME gibt "string" was das Problem? und während der Ausführung Abfrage Treiber ist nicht geladenkann eine Verbindung nicht unter qt nennen

Antwort

2

QSqlDatabase::addDatabase ist eine statische Funktion, die ein QSqlDatabase Objekt zurückgibt. Es macht also nichts zu Ihrem bestehenden Objekt QSqlDatabase. Wie Sie es verwenden sollten:

db = QSqlDatabase::addDatabase("QMYSQL", conName); 
Verwandte Themen