我创建了一个向sqlite表添加新记录的函数,一切正常,但在尝试插入字符串时,会添加两个额外的引号
码:
int dBase::ajouter(QString table,QVector<QVariant> valeurs)
{
connect();
QSqlQuery query(db);
QString sql="INSERT INTO "+table+" VALUES (NULL";
for(int i=0;i<valeurs.length();i++)
sql+=", :val"+QString::number(i);
sql+=")";
query.prepare(sql);
for(int i=0;i<valeurs.length();i++)
query.bindValue(":val"+QString::number(i), valeurs.at(i));
int ret=-1;
if(query.exec())
ret=query.lastInsertId().toInt();
else
qDebug()<<query.lastError();
disconnect();
return ret;
}
执行select时显示的值:
1 |'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''12345
我尝试使用时发现了这个问题,而Nom =“x”时它总是没有返回记录 .