- 我提出了一个请求,它在json utf-8(dict与tupels)响应。
- 我想插入到MySQL数据库的JSON响应。
- 我使用
string.encode('utf-8')
对字符串进行编码,但随后数据库(也使用UTF-8编码)不会插入正确的值。
没有string.encode('utf-8')
我会得到一个UnicodeEncodeError,如此看来这个必要将字符串编码mysql数据库的python3编码
UnicodeEncodeError: 'ascii' codec can't encode character '\xfc' in position 147: ordinal not in range(128)
我打一个比方:在JSON
- 字符串: 'quälend'
- 编码后的字符串:'qu \ xC3 \ xA4lend'
- 插入数据库:'quälend'
我的猜测是,该数据库处理编码的utf-8字符串仍然是latin-1,但是当我插入一些未编码的示例utf-8字符串时,它就起作用。所以数据库可以正确处理,但不是编码字符串。
你知道这个问题可能是什么吗?几个小时后,我对这个问题放松了下来。任何暗示高度赞赏。