我有一个包含 ClipArt 标记的 Sqlite 数据库,我们正在将该数据库翻译成瑞典语,但是如果字符是非英语英国人,我的数据库查询现在不会返回结果。
例如, fisk == fish 并且效果很好,但是 öst == east 但失败了。
我正在从 QLineEdit 在 QString 中构造查询:
sqlStatement += QString(" FileID IN (SELECT TLFileID FROM tblTags "
" INNER JOIN tblTagLinks ON tagId = TLTagId "
" WHERE tagLanguage LIKE '%1' "
" AND (tagName LIKE '%2' OR tagName LIKE '%2s' "
" OR tagLangSWEDISH LIKE '%2' "
" OR tagLangFINNISH LIKE '%2' "
" OR tagLangITALIAN LIKE '%2' ))").arg(defaultLanguage, tag);
然后将其转换为 QSqlQuery:
qryFiles.prepare(sqlStatement);
if(!qryFiles.exec())
我知道数据库有字符,因为我一直在使用 Sqlite 管理工具和 Excel 将数据导入和导出为 CSV 供翻译人员翻译。
我必须以特殊方式打开数据库吗?
我正在使用 Qt 4.5.2、Windows XP、VS2008、Sqlite 3.5.1