比如下面的删除语句: QString name_del = str[r].name; qDebug()<<name_del; QSqlQuery query; query.exec("DELETE FROM information WHERE name = name_del "); 如果改成: query.exec("DELETE FROM information WHERE name = ‘aaa’ ");就可以删除,但上面的就不可以。 请问怎么在插入、删除等等操作中使用变量,我是在Qt中操作的,麻烦告知,谢谢!!我有更好的答案
提问者采纳
2012-11-15 16:45
query.exec(QString("DELETE FROM information WHERE name='%1'").arg(name_del)); 1可以在query.exec前,声明QString sqlquery;将带变量的sql语句放入sqlquery中 sqlquery=QObject::tr("insert into table values('%1','%2')").arg(value1,value2); 执行query.exec(sqlquery);就可以了 2可以使用query.prepare()和query.bindvalue(); 例如: query.prepare("UPDATE table SET value1 = ? WHERE id = 1"); query.bindValue(0, 100); query.exec();