首页 / 日本服务器 / 正文
Python 使用 MySQL,从入门到精通

Time:2025年01月06日 Read:7 评论:42 作者:y21dr45

在当今的软件开发领域,Python 和 MySQL 都是非常受欢迎和广泛使用的技术,Python 以其简洁、易学和强大的库支持而闻名,而 MySQL 则是一个高效、可靠且开源的关系型数据库管理系统,本文将详细介绍如何在 Python 中使用 MySQL,包括安装必要的库、连接数据库、执行 SQL 查询以及处理结果等步骤。

Python 使用 MySQL,从入门到精通

一、环境准备

我们需要确保已经安装了 Python 和 MySQL,如果尚未安装,可以从各自的官方网站下载并安装,还需要安装一个用于连接 MySQL 的 Python 库,最常用的是mysql-connector-pythonPyMySQL,这里我们以mysql-connector-python 为例进行说明。

1、安装 MySQL Connector for Python

打开命令行终端(Windows 下的命令提示符或 PowerShell, Linux/Mac 下的终端),输入以下命令来安装mysql-connector-python

   pip install mysql-connector-python

2、启动 MySQL 服务

确保 MySQL 服务正在运行,对于 Windows 用户,可以通过“服务”管理器找到 MySQL 服务并启动它;Linux/Mac 用户则可以通过以下命令启动:

   sudo service mysql start

3、创建数据库和表

为了演示,我们可以在 MySQL 中创建一个测试数据库和一个简单的表,使用以下 SQL 语句:

   CREATE DATABASE test_db;
   USE test_db;
   CREATE TABLE users (
       id INT AUTO_INCREMENT PRIMARY KEY,
       name VARCHAR(255) NOT NULL,
       email VARCHAR(255) NOT NULL
   );

执行上述 SQL 语句后,我们就拥有了一个名为test_db 的数据库和一个名为users 的表。

二、连接到 MySQL 数据库

我们将在 Python 脚本中连接到 MySQL 数据库,导入所需的库,然后使用适当的凭据建立连接。

import mysql.connector
from mysql.connector import Error
def create_connection(host_name, user_name, user_password, db_name):
    connection = None
    try:
        connection = mysql.connector.connect(
            host=host_name,
            user=user_name,
            passwd=user_password,
            database=db_name
        )
        print("Connection to MySQL DB successful")
    except Error as e:
        print(f"The error '{e}' occurred")
    return connection
Replace with your own credentials and database name
connection = create_connection("localhost", "root", "", "test_db")

三、执行 SQL 查询

建立连接后,我们可以开始执行 SQL 查询了,以下是一些常见的操作示例,包括插入数据、查询数据、更新数据和删除数据。

1、插入数据

users 表中插入一条新记录:

   def execute_query(connection, query):
       cursor = connection.cursor()
       try:
           cursor.execute(query)
           connection.commit()
           print("Query executed successfully")
       except Error as e:
           print(f"The error '{e}' occurred")
insert_users_query = """
INSERT INTO users (name, email) VALUES ('John Doe', 'john.doe@example.com')
"""
execute_query(connection, insert_users_query)

2、查询数据

users 表中检索所有记录:

   def fetch_data(connection, query):
       cursor = connection.cursor()
       result = None
       try:
           cursor.execute(query)
           result = cursor.fetchall()
           return result
       except Error as e:
           print(f"The error '{e}' occurred")
       finally:
           cursor.close()
select_users_query = "SELECT * FROM users"
users_list = fetch_data(connection, select_users_query)
for user in users_list:
    print(user)

3、更新数据

更新users 表中的一条记录:

update_users_query = """
UPDATE users SET email = 'john.newemail@example.com' WHERE name = 'John Doe'
"""
execute_query(connection, update_users_query)

4、删除数据

删除users 表中的一条记录:

delete_users_query = "DELETE FROM users WHERE name = 'John Doe'"
execute_query(connection, delete_users_query)

四、处理结果集

在上面的查询数据示例中,我们已经看到了如何使用fetchall() 方法来获取所有结果,还有其他方法可以处理结果集,例如fetchone()(获取单条记录)和fetchmany(size)(获取指定数量的记录),根据具体需求选择合适的方法。

五、关闭连接

完成所有操作后,别忘了关闭数据库连接以释放资源:

if connection.is_connected():
    cursor.close()
    connection.close()
    print("MySQL connection is closed")

六、总结

通过本文的介绍,我们学习了如何在 Python 中使用 MySQL,包括安装必要的库、连接到数据库、执行 SQL 查询以及处理结果等基本操作,这些技能为开发基于 Python 和 MySQL 的应用程序打下了坚实的基础,实际项目中可能还会遇到更多复杂的场景,但掌握了这些基础知识,就能够应对大多数情况,希望本文对你有所帮助!

标签: python使用mysql 
排行榜
关于我们
「好主机」服务器测评网专注于为用户提供专业、真实的服务器评测与高性价比推荐。我们通过硬核性能测试、稳定性追踪及用户真实评价,帮助企业和个人用户快速找到最适合的服务器解决方案。无论是云服务器、物理服务器还是企业级服务器,好主机都是您值得信赖的选购指南!
快捷菜单1
服务器测评
VPS测评
VPS测评
服务器资讯
服务器资讯
扫码关注
鲁ICP备2022041413号-1