sqlite3 python无法查询unicode字符串

2024-10-03 17:26:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个数据库,里面有这个例子表.name名字在哪里

International Circuit "8 Marzo Fotografia" 2° Trofeo Cassero di Montevarchi

我有一个小部件可以查数据库(表.name)当您在其中输入文本时,当我输入'fotografia'时,与小部件相关联的下拉列表将缩小以显示上面的文本('国际巡回赛“8 Marzo fotografia”2°Trofeo Cassero di Montevarchi')

然后,我从小部件的wx.textCtrl(via GetValue())中获取此文本,并使用结果查询数据库,以查找包含该文本的行的rowid('International Circuit“8 Marzo Fotografia”2°Trofeo Cassero di Montevarchi') 我知道行是存在的(我在数据库浏览器上看到过,我的小部件产生了文本)

使用

sql = """select rowid from table where name = ?"""

以及

cursor.execute(sql, (copied text,))

。。。。我没有结果

我在应用程序中加入了各种调试点来验证文本是否返回到变量中,我已经.decode('utf-8').encode('utf-8')unicode(variable)没有结果。你知道吗

将有问题的文本复制并粘贴到我的数据库浏览器中,然后手动运行sql—不会返回任何结果。我错过了什么/做错了什么?当我对这一行使用rowid时——我完美地恢复了上面的文本,我似乎无法对包含unicode字符的文本运行查询。你知道吗

Python版本2.7.5和sqlite3版本2.6.0。。。你知道吗


Tags: name文本数据库sql部件diinternationalcircuit