最近用mysqlalchmy的時候遇到了
sqlalchemy.exc.InternalError: (pymysql.err.InternalError) (1366, "Incorrect string value: '\\xF0\\xA0\\x88\\x8C\\xEF\\xBC...' for column 'wb_content' at row 75")
錯誤網上找了很多方案都說把表的字符集改成utf8mb4就好了 然后我就修改了
然並卵,還是報錯
最后執行了以下語句ok了
,很奇怪不知道為什么。
如果表已經存在了運行下面這句就可。
ALTER TABLE wb_info CONVERT TO CHARACTER SET utf8mb4;
同時程序也的修改
charset="utf8mb4"
connect_str= "{}+pymysql://{}:{}@{}:{}/{}?charset={}".format(args['db_type'], args['user'], password,args['host'], args['port'], args['db'],charset)
engine=create_engine(connect_str)
如果不存在就只需在鏈接數據庫的時候把charset改成utf8mb4創建的時候就是utf8mb4的字符集了。
如何創建表點這 創建表
親測