最近学到将爬取到的内容写入MySQL,但是发现无法存入中文字符,百思不得其解一直认为是pycharm中的mysql语句写错了:

(因为execute可以有两个参数所以直接写进去了比较好看)
上网查说可能是没有commit(),但是加上之后也无济于事,在努力了一晚上之后,我决定从mysql的编码入手,先查看一下所建表的编码:
show create table 表名;

刚开始表的charset也是latin1,况且每列的编码也是latin1,经过上网查询之后解决办法如下:
1.找到MySQL中my.ini

2.在my.ini中找到
default-charater-set设置为gbk
3.然后再找到
character-set-server设置为utf8
4.找到
sql-mode将其注释或者删掉STRICT_TRANS_TABLES(嫌麻烦直接注释就可)
5.重启MySQL,重新建表即可(如果不放心可以再看一下表的编码)
我修改完之后的样子:
然后就可以插入中文字符了
成功之后好开心啊啊啊啊啊啊,记录第一次写博客!
posted on
浙公网安备 33010602011771号