我用的dialect是pymysql,先看了一下pymysql,發現果真在這一層就已經出問題了mysql
若是用純pymysql的話,在鏈接數據庫的時候要加上charset='utf8'
sql
conn = pymysql.connect(host='localhost', user='root', db='db', charset='utf8')
而後在sqlalchemy這一層的作法是在dsn字符串後面加上?charset=utf8
數據庫
engine = create_engine('mysql+pymysql://%s:%s@%s/%s?charset=utf8' % ( user, passwd, host, database), echo=True)