(1)使用 from pymysql.converters import escape_string
(2)解決Mysql:Incorrect string value: '\xF0\x9F\x8D\x83\xF0\x9F...' for column
原因:
通常情況,Mysql數據編碼格式為“utf-8”,對于漢字來說足夠;
Mysql中utf8占3個字節(jié),但是,3個字節(jié)對于表情符號是不夠的,需4個字節(jié);
此時使用utf8,會出現‘\xF0\x9F\x8D\x83\xF0\x9F’的問題。
解決辦法:
1)針對字段修改編碼格式
數據庫表對應字段上修改編碼格式為utf8mb4,命令示例如下:
```ALTER TABLE insure_user CHANGE nickname nickname VARCHAR(64) CHARACTER SET utf8mb4 ; ```
2)修改數據庫表的編碼格式,修改為utf8mb4
3)mysql連接時,字符編碼也做相應的修改
conn = connect(host='xx', port=3306, user='xx', password='xx', database='xx', charset='utf8mb4')