2012-05-12 1 views
2
query->prepare("INSERT INTO businessweek (id, source, date, headline, body) VALUES (NULL, ?, ?, ?, ?)"); 
query->bindValue(1, "source"); 
query->bindValue(2, "date"); 
query->bindValue(3, "headline"); 
query->bindValue(4, "body"); 

if (query->exec()) { 
    tt << "Query success"; 
} else { 
    qDebug() << db.lastError(); 
    return; 
} 

J'utilise QMYSQL. Et l'erreur estQt SQL requête a échoué

QSqlError(-1, "", "") 

Mais

query->exec("INSERT INTO businessweek (id, source, date, headline, body) VALUES (NULL, 'google', 'may 0, 23', 'head', 'fjsdflksjdlkfdsjlfkjd');") 

fonctionne très bien.

Répondre

3

Il est difficile de deviner le problème. Mais une chose que je pourrais imaginer et qui est certainement faux avec votre code est que la numérotation des champs pour bindValue commence à 0 (voir here).

Ainsi, je vous suggère d'essayer

query->prepare("INSERT INTO businessweek (id, source, date, headline, body) VALUES (NULL, ?, ?, ?, ?)"); 
query->bindValue(0, "source"); 
query->bindValue(1, "date"); 
query->bindValue(2, "headline"); 
query->bindValue(3, "body"); 

if (query->exec()) { 
    tt << "Query success"; 
} else { 
    qDebug() << db.lastError(); 
    return; 
} 
+0

Merci. Ça commence par 0 :) – Dewsworld

Questions connexes