qt oracle bindvalue,Qt Sql bindValue与%
本站所有文章由本站和原作者保留一切權力,僅在保留本版權信息、原文鏈接、原文作者的情況下允許轉載,轉載請勿刪改原文內容, 并不得用于商業用途。 謝謝合作。
原文鏈接:Qt Sql bindValue與%
Qt Sql bindValue與%
今天qq群里有人問了個有難度的sql問題(或許很沒難度,呵呵, 可惜筆者基本上對sql一竅不通), 如下code:
QString sql("SELECT id, name ");
sql += "FROM customer WHERE name LIKE '%:name%'";?? //issue this line
bool result = false;
QSqlDatabase db = DBUtil::getDatabase(ok, error);
QSqlQuery query(db);
query.prepare(sql);
query.bindValue(":name", name);
result = query.exec();
這里的bindValue并不能實現替換。 估計是%在字符串里被定義成了特殊的字符, 可能影響了bind的功能。 向專家咨詢了一下, 得到了以下的解決方式:
QString sql("SELECT id, name )";
sql += "FROM customer WHERE name LIKE :name";?? //issue this line
bool result = false;
QSqlDatabase db = DBUtil::getDatabase(ok, error);
QSqlQuery query(db);
query.prepare(sql);
query.bindValue(":name", "%"+name+"%");
result = query.exec();
看上去應該能行。 正在實驗, 稍后貼測試結果。
總結
以上是生活随笔為你收集整理的qt oracle bindvalue,Qt Sql bindValue与%的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php网页文字居中代码怎么写,html里
- 下一篇: linux密码忘记grub登陆,Linu