千家信息网

MySQL如何解决无法存储emoji表情的问题

发表于:2025-01-21 作者:千家信息网编辑
千家信息网最后更新 2025年01月21日,这篇文章给大家分享的是有关MySQL如何解决无法存储emoji表情的问题的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。具体内容如下1. 在navicat中如果在新建表之前就
千家信息网最后更新 2025年01月21日MySQL如何解决无法存储emoji表情的问题

这篇文章给大家分享的是有关MySQL如何解决无法存储emoji表情的问题的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

具体内容如下

1. 在navicat中

如果在新建表之前就改变数据库的编码,建表的时候好像可以自己转变过来吧

查看字符集编码:

show variables like '%char%';

更改数据库编码:

ALTER DATABASE 数据库名 CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

更改表编码:

ALTER TABLE 表名 CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

下面这些,好像没用到,要是不行也可以用用

set @@character_set_client='utf8mb4';set @@character_set_connection='utf8mb4';set @@character_set_results='utf8mb4';set @@character_set_server='utf8mb4';

2. 在爬虫代码中

class MysqlPipeline(object):  def __init__(self):    self.conn = MySQLdb.connect('127.0.0.1', 'root', 'root', 'article_spider', charset='utf8mb4', use_unicode=True)    self.cursor = self.conn.cursor()  def process_item(self, item, spider):    insert_sql = '''      insert into article(title,url,bookmark_nums,url_object_id,content)      VALUE (%s,%s,%s,%s,%s)    '''    self.cursor.execute(insert_sql, (item['title'], item['url'], item['bookmark_nums'],item['url_object_id'], item['content']))    self.conn.commit()

感谢各位的阅读!关于"MySQL如何解决无法存储emoji表情的问题"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

0