Qt关于操作mysql的语句中使用变量,如何使用。
比如下面的删除语句:QStringname_del=str[r].name;qDebug()<<name_del;QSqlQueryquery;query.exec("D...
比如下面的删除语句:
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中操作的,麻烦告知,谢谢!! 展开
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中操作的,麻烦告知,谢谢!! 展开
1个回答
展开全部
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();
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();
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询