尝试了创建engine时设置charset=utf8,这样起作用的前提是在创建database时需要CHARSET=UTF8
步骤1
CREATE DATABASE test CHARSET=UTF8;
步骤2
engine = create_engine(“mysql+pymysql://root:abc@192.168.1.3/test?charset=utf8”,encoding=‘utf-8’, echo=True)
若创建数据库时没有设置,只需要在创建表结构时设置__table_args__
class Customer(Base):
tablename = ‘customer’
id = Column(Integer, primary_key=True)
name = Column(String(32))
__table_args__ = {
"mysql_charset" : "utf8"
}