登录
首页 >  文章 >  python教程

Python连接MySQL的几种方法

时间:2025-07-06 19:45:29 117浏览 收藏

想要用Python连接MySQL数据库?本文为你提供清晰易懂的指南!首先,你需要安装合适的第三方库,例如广泛使用的pymysql或mysql-connector-python。接着,通过connect()方法建立连接,务必正确填写主机地址、用户名、密码和数据库名等关键参数。连接成功后,创建游标对象来执行SQL语句,查询数据后记得关闭游标和连接,释放资源。更重要的是,执行插入或更新操作后,必须使用conn.commit()提交事务,否则数据更改不会生效。为了简化代码并确保资源管理,强烈推荐使用with语句结合上下文管理器,自动处理连接与游标的关闭,让你的Python MySQL连接既高效又安全。掌握这些要点,轻松玩转Python数据库操作!

Python连接MySQL数据库的关键在于选对库并正确配置参数。首步是安装第三方库,推荐使用pymysql或mysql-connector-python,其中pymysql更受欢迎。接着,通过connect()方法建立连接时,需提供主机地址、用户名、密码、数据库名等信息,并创建游标对象执行SQL语句。例如查询数据后要记得关闭游标和连接,避免资源泄露;若执行插入或更新操作,则必须调用conn.commit()提交事务,否则数据不会生效。为简化资源管理,推荐使用with语句结合上下文管理器自动处理连接与游标,既简洁又安全。只要注意以上要点,Python连接MySQL并不困难。

Python连接MySQL数据库的方法

Python连接MySQL数据库其实不难,关键是要选对库、写对参数。最常用的工具是pymysqlmysql-connector-python这两个第三方库,只要安装好其中一个,再按格式写好连接语句,就能顺利连上数据库。

Python连接MySQL数据库的方法

安装必要的库

Python本身没有内置连接MySQL的模块,所以第一步是安装第三方库。常用的选择有两个:pymysqlmysql-connector-python,任选其一即可。

Python连接MySQL数据库的方法
  • 安装 pymysql:

    pip install pymysql
  • 安装 mysql-connector-python:

    Python连接MySQL数据库的方法
    pip install mysql-connector-python

如果你不确定用哪个,可以优先选pymysql,它使用广泛,文档也比较多。

基本连接方式

连接数据库时,需要提供主机地址、用户名、密码、数据库名等信息。以pymysql为例,基本写法如下:

import pymysql

conn = pymysql.connect(
    host='localhost',
    user='root',
    password='your_password',
    database='test_db'
)

cursor = conn.cursor()
cursor.execute("SELECT * FROM users")
result = cursor.fetchall()
print(result)

cursor.close()
conn.close()

这段代码做了几件事:

  • 使用connect()方法建立连接;
  • 创建游标对象用来执行SQL语句;
  • 执行一个查询并获取结果;
  • 最后记得关闭游标和连接,避免资源泄露。

注意:如果数据库不在本地,要改host为实际IP地址;如果端口不是默认3306,还要加上port=xxx参数。

插入和更新数据的小细节

执行插入或更新操作时,除了写对SQL语句外,还有一个容易忽略的点:一定要提交事务,否则数据不会真正写进数据库。

比如插入一条记录:

cursor.execute("INSERT INTO users (name, age) VALUES ('Tom', 25)")
conn.commit()  # 这一步不能少

如果不调用commit(),那这条插入可能只是在事务中暂存,并不会生效。另外,也可以使用rollback()来回退未提交的操作。

使用上下文管理器简化操作(推荐)

为了防止忘记关闭连接或游标,可以用with语句自动管理资源。pymysql支持上下文管理器,例如:

with pymysql.connect(
    host='localhost',
    user='root',
    password='your_password',
    database='test_db'
) as conn:
    with conn.cursor() as cursor:
        cursor.execute("SELECT * FROM users")
        print(cursor.fetchall())

这样就不需要手动调用close()了,代码更简洁也更安全。

基本上就这些。只要把连接参数写对,记得提交事务、及时关闭资源,Python连接MySQL就没啥大问题。

今天关于《Python连接MySQL的几种方法》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于的内容请关注golang学习网公众号!

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>