使用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")問題就成功解決啦!