Python 操作 MySQL 字符集的问题

本文介绍如何使用Python的mysql-connector库连接MySQL数据库,包括安装、连接配置及字符集设置,解决特殊字符插入问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用 Python 操作 MySQL 有不少库供我们选择,比如 MySQLdb、mysqlclient、PyMySQL、peewee 和 SQLAIchemy 等。我使用的是 mysql-connector,它是 MySQL 官方提供的驱动器,用来给后端语言,比如 Python 提供连接。下面我们看下如何用 Python 使用 mysql-connector,以完成数据库的连接和使用。

首先安装 mysql-connector。在使用前,你需要先使用下面这句命令进行安装:

pip3 install mysql-connector

使用

# -*- coding: UTF-8 -*-
import mysql.connector
# 打开数据库连接
db = mysql.connector.connect(
       host="localhost",
       user="root",
       passwd="XXX", # 写上你的数据库密码
       database='wucai', 
       auth_plugin='mysql_native_password'
)
# 获取操作游标 
cursor = db.cursor()
# 执行SQL语句
cursor.execute("SELECT VERSION()")
# 获取一条数据
data = cursor.fetchone()
print("MySQL版本: %s " % data)
# 关闭游标&数据库连接
cursor.close()
db.close()

我插入了一条带有表情的字符,突然插不进去。出现如下错误: file

很明显,我们知道要想存表情数据库字符集必须是 utf8mb4 的字符集,但是我就是 utf8mb4 呀? file

最后整了半天原来创建 MySQL 连接的时候需要指定字符集

db = mysql.connector.connect(
        host="140.143.190.184",
        user="root",
        passwd="20140709ZHENROOT.",
        database='geek_test',
        auth_plugin='mysql_native_password',
        charset="utf8mb4")

唉,往我改了半天 字符集,表、字段都改了。。。

关于极客返利

极客返利 是由我个人开发的一款网课返利、返现平台。包含 极客时间返现、拉勾教育返现、掘金小册返现、GitChat返现。目前仅包含这几个平台。后续如果有需要可以考虑其他平台。 简而言之就是:你买课,我返现。让你花更少的钱,就可以买到课程。

https://geek.laravelcode.cn

https://geek.idaka.ink

版权许可
本作品采用 知识共享署名 4.0 国际许可协议 进行许可。

转载无需与我联系,但须注明出处,注明文章来源 Python 操作 MySQL 字符集的问题

联系我
编程怪事
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值