weixin_39236818
2021-11-25 19:26
采纳率: 0%
浏览 12

qt中使用otl方式访问SQLite3数据库,带有中文时查询失败

公司有个项目,在qt引用otl的otl_stream方法去访问SQLite3,在“SELECT”查询时,SQL语句是纯英文时则正常的,带有中文条件则返回失败,我看网上说的都是说要设置为utf8编码问题,但是也有人说otl不支持utf8的,下面是执行的执行的代码:

QString statementOtl;
statementOtl = "select * from produce_ where name like :key<char[100]> order by insert_time desc";
otl_stream i(1000, statementOtl.toStdString().c_str(), db);
string key = "%测试%";
const char* ck = key.c_str();
 i << ck;
 while (!i.eof())
{
    ********
}

其中i.eof()不为0,得不到数据,sql语句用qt中的fromLocal8Bit等方法转化过也不行,请问大家有遇到同样的问题吗

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • weixin_398529324 2021-11-28 09:37

    你数据库是UTF-8吗

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题