如何解決:UnicodeEncodeError: 'latin-1' codec can't encode characters in position 88-89.....

使用python3向MySQL插入中文數據時出現這個錯誤

UnicodeEncodeError: 'latin-1' codec can't encode characters in position 88-89: ordinal not in range(256)



SQL語句是這樣的

"INSERT INTO EMPLOYEE(FIRST_NAME, LAST_NAME, AGE, SEX, INCOME) 
                VALUES ('小明', '小紅', 100, '女', 2016)

一開始沒認真看,將SQL語句用MySQL運行,沒有任何問題

後來認真看了編譯器報的錯誤知道了是編碼問題,解決辦法是這樣的:

將原來的:

db = pymysql.connect("localhost", "root", "123", "testuser")
改爲:

db = pymysql.connect("localhost", "root", "123", "testuser", charset="utf8")
問題就成功解決啦!
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章