在利用python向mysql插入中文时,出现错误,代码如下:
importpymysql
try: #首先要链接mysql db=pymysql.connect(“127.0.0.1”,”root”,”1234”) #数据的游标 cursor=db.cursor() #选择数据库 cursor.execute(“usetest”) #增加数据 cursor.execute(“insert into maoyantop100 values(‘霸王别姬’,’张国荣,张丰毅,巩俐’,’1993.01.01’,’9.6’)”) #使sql语句生效 db.commit() #关闭mysql链接 db.close() print(“密码正确”) except: print(“密码错误”)
以上代码运行时打印出“密码错误”,而同样的代码,将插入的数据改成英文时,则打印“密码正确”, 表明问题出在中文字符上,经过查询发现,在链接mysql时指定编码格式,就能够正常插入中文了, 即,将链接mysql的语句改为:
db=pymysql.connect("127.0.0.1","root","1234",charset="utf8")
重新运行,打印“密码正确”,表明可以正常插入中文了。