在写入数据库时我用的是下面这段代码,其中data是一个包含三个数据的元组。写入mysql时中文字符都变成了乱码
def save_data(self,data):
#数据库操作
#(1)定义一个格式化的sql数据
sql='insert into news(NEWS_TITLE,NEWS_TIME,NEWS_ARTICLE) values(%s,%s,%s)'
#(2)准备数据
try:
self.cursor.execute('set names gb2312')
self.cursor.execute(sql,data)
self.conn.commit()
except Exception as e:
print('插入数据失败',e)
self.conn.rollback()#回滚
这里的解决办法是将
self.cursor.execute('set names gb2312')
改为
self.cursor.execute('set names utf8')
数据库中的中文字符就不是乱码了