如何修复 Qt 中 INSERT 查询的语法错误?
How to fix synthax error with INSERT Query on Qt?
我正在尝试制作一个应用程序,用户可以在其中访问数据库并将行添加到同一数据库中。
问题是我有一个 sql 查询语法错误,尽管我相信我写对了:
void FenPrincipale::boutonAjouter(){
requete.bindValue(":Nom",ajout_nom->text());
requete.bindValue(":Catégorie",liste_categories->currentText());
requete.bindValue(":Commentaires",ajout_description->toPlainText());;
qDebug() << liste_categories->currentText();
qDebug() << ajout_description->toPlainText();
qDebug() << ajout_nom->text();
requete.exec("INSERT INTO objets (Nom, Catégorie, Commentaires, Image)"
" VALUES (:Nom, :Catégorie, :Commentaires, test )");
if(requete.exec()) {
qDebug() << "Ok - requete";
// Boucle qui permet de parcourir les enregistrements renvoyés par la requête
while(requete.next()) {
}//fin du while
}//fin du if
else {
qDebug() << "Echec de la requête : " << requete.lastError();
}
}
我有这个错误:
QSqlError("1064", "QMYSQL: Unable to execute query", "You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ':Nom, :Catégorie, :Commentaires, test )' at line 1")
我在网上到处搜索,但我找不到解决办法,我没有看到我在哪里犯了一个语法错误...
你能帮我解决这个问题吗?
谢谢!
您需要准备查询,然后向其中添加值
由于您的口音似乎有问题,请将其放在反引号中,或者将其完全删除。
requete.prepare("INSERT INTO objets (Nom, `Catégorie`, Commentaires, Image)"
" VALUES (:Nom, :Catégorie, :Commentaires, test )");
requete.bindValue(":Nom",ajout_nom->text());
requete.bindValue(":Catégorie",liste_categories->currentText());
requete.bindValue(":Commentaires",ajout_description->toPlainText());
requete.exec
我正在尝试制作一个应用程序,用户可以在其中访问数据库并将行添加到同一数据库中。 问题是我有一个 sql 查询语法错误,尽管我相信我写对了:
void FenPrincipale::boutonAjouter(){
requete.bindValue(":Nom",ajout_nom->text());
requete.bindValue(":Catégorie",liste_categories->currentText());
requete.bindValue(":Commentaires",ajout_description->toPlainText());;
qDebug() << liste_categories->currentText();
qDebug() << ajout_description->toPlainText();
qDebug() << ajout_nom->text();
requete.exec("INSERT INTO objets (Nom, Catégorie, Commentaires, Image)"
" VALUES (:Nom, :Catégorie, :Commentaires, test )");
if(requete.exec()) {
qDebug() << "Ok - requete";
// Boucle qui permet de parcourir les enregistrements renvoyés par la requête
while(requete.next()) {
}//fin du while
}//fin du if
else {
qDebug() << "Echec de la requête : " << requete.lastError();
}
}
我有这个错误:
QSqlError("1064", "QMYSQL: Unable to execute query", "You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ':Nom, :Catégorie, :Commentaires, test )' at line 1")
我在网上到处搜索,但我找不到解决办法,我没有看到我在哪里犯了一个语法错误...
你能帮我解决这个问题吗? 谢谢!
您需要准备查询,然后向其中添加值
由于您的口音似乎有问题,请将其放在反引号中,或者将其完全删除。
requete.prepare("INSERT INTO objets (Nom, `Catégorie`, Commentaires, Image)"
" VALUES (:Nom, :Catégorie, :Commentaires, test )");
requete.bindValue(":Nom",ajout_nom->text());
requete.bindValue(":Catégorie",liste_categories->currentText());
requete.bindValue(":Commentaires",ajout_description->toPlainText());
requete.exec