python插入mysql中文乱码问题

mysql的默认编码为latin1,查找mysqldb的源码关键报错的地方是cursor.execute,这里要执行一下encode(charset),既然这里要encode,那就在外面先decode一下,果然什么都不改,在自己的调用函数里做decode。

sql = 'insert into aa values('测试')'
sql = sql.decode('latin1')
cursor.execute(sql)

你可能感兴趣的:(sql,mysql,python)