所以這裏是我的問題:我試圖從表 比較它與一個Unicode字符串的特定值。該值也是unicode。我正在使用 mysql.connector
。服務器設置都是以utf8爲導向的。當我在查詢後運行 - 我得到一個空列表。當我運行它時沒有使用'WHERE Title like '%s''
部件,我得到了一組完整的值,並且它們在 輸出中正確顯示。相同的查詢在服務器上的命令行中起作用。在那裏值肯定是 。我錯過了什麼?Python的mysql連接器喜歡unicode值
conn = sql.connect(host='xxxxxxx', user='xxx', password='xxx', database='db', charset="utf8")
cur = conn.cursor()
townQuery = (u"""SELECT * FROM Towns WHERE Title like '%s' """)
tqd = (u"%" +u"Серов"+u"%")
cur.execute(townQuery, tqd)
for i in cur:
print i
這就是問題 - 沒有這些引號,它根本不起作用......拋出異常... –
請發佈完整的回溯錯誤消息。 – unutbu
非常感謝!這個逗號是問題!現在它工作! –