欢迎访问宙启技术站
智能推送

使用Python怎么操作MySQL数据库

发布时间:2023-05-17 20:04:10

Python是一种高级编程语言,具有代码简洁、易读性强、拓展性强等优点,因此在操作MySQL数据库时,使用Python也会变得十分便捷。本文将介绍如何使用Python操作MySQL数据库,并对操作流程进行详细解释。

一、安装Python MySQL连接库

在Python中操作MySQL数据库需要使用第三方库,MySQLdb和PyMySQL是Python中两种常用的MySQL连接库,本文将对这两种库进行简单介绍。

1.MySQLdb库安装

MySQLdb库需要在安装之前先安装Python-Dev和libmysqlclient-dev两个包:

(1)运行以下命令安装Python-Dev和libmysqlclient-dev两个包:

$ sudo apt-get install python-dev
$ sudo apt-get install libmysqlclient-dev

(2)运行以下命令安装MySQLdb库:

$ sudo apt-get install python-mysqldb

这样就完成了MySQLdb库的安装。

2.PyMySQL库安装

PyMySQL是Python3中使用的MySQL连接库,如需使用PyMySQL库,需要先安装。

(1)运行以下命令安装PyMySQL库:

$ sudo pip install pymysql

这样就完成了PyMySQL库的安装。

二、在Python中连接MySQL

在Python中,连接MySQL之前需要确定数据库的主机地址、用户名和密码,以便可以访问数据库。连接数据库的方法分为三步:

1.导入MySQLdb或PyMySQL库

如导入了MySQLdb库,则需使用命令:

import MySQLdb

如导入了PyMySQL库,则需使用命令:

import pymysql

2.连接MySQL

在连接MySQL之前,需要配置主机地址、用户名和密码等连接信息,并确认端口号。

(1)使用MySQLdb时,连接MySQL的方法如下:

conn = MySQLdb.connect(host="localhost", port=3306, user="root", passwd="password", db="mysql")

(2)使用PyMySQL时,连接MySQL的方法如下:

conn = pymysql.connect(host='localhost', port=3306, user='root', passwd='password', db='mysql', charset='utf8')

3.关闭连接

无论是使用MySQLdb还是PyMySQL,都需要关闭连接。关闭连接的方法如下:

conn.close()

三、在Python中操作MySQL

连接MySQL成功之后,就可以在Python中实现对MySQL数据库的增、删、改、查操作。具体操作如下:

1.查询数据

使用Python向MySQL进行查询之前,首先需要利用游标(cursor)将查询结果检索出来。

(1)使用MySQLdb时,查询的操作如下:

# 实例化游标
cursor = conn.cursor()

# 执行查询数据的操作
cursor.execute("select * from student")

# 检索结果
res = cursor.fetchall()

# 输出结果
for row in res:
    print(row)

# 关闭游标
cursor.close()

(2)使用PyMySQL时,查询的操作如下:

# 实例化游标
cursor = conn.cursor()

# 执行查询数据的操作
cursor.execute("select * from student")

# 检索结果
res = cursor.fetchall()

# 输出结果
for row in res:
    print(row)

# 关闭游标
cursor.close()

2.增加数据

使用Python向MySQL添加数据之前,需要先开启事务,向MySQL写入数据之后,再提交事务。

(1)使用MySQLdb时,增加数据的操作如下:

# 实例化游标
cursor = conn.cursor()

try:
    # 开启事务
    conn.begin()

    # 插入数据
    cursor.execute("insert into student values(3,'Tom',25,'男')")

    # 提交事务
    conn.commit()
    print('数据保存成功!')

except Exception as e:
    print('保存数据出现异常:', e)
    # 回滚事务
    conn.rollback()

# 关闭游标
cursor.close()

(2)使用PyMySQL时,增加数据的操作如下:

# 实例化游标
cursor = conn.cursor()

try:
    # 开启事务
    conn.begin()

    # 插入数据
    cursor.execute("insert into student values(3,'Tom',25,'男')")

    # 提交事务
    conn.commit()
    print('数据保存成功!')

except Exception as e:
    print('保存数据出现异常:', e)
    # 回滚事务
    conn.rollback()

# 关闭游标
cursor.close()

3.删除数据

使用Python向MySQL删除数据之前,需要先开启事务,删除MySQL中的数据之后,再提交事务。

(1)使用MySQLdb时,删除数据的操作如下:

# 实例化游标
cursor = conn.cursor()

try:
    # 开启事务
    conn.begin()

    # 删除数据
    cursor.execute("delete from student where id = 3")

    # 提交事务
    conn.commit()
    print('数据删除成功!')

except Exception as e:
    print('删除数据出现异常:', e)
    # 回滚事务
    conn.rollback()

# 关闭游标
cursor.close()

(2)使用PyMySQL时,删除数据的操作如下:

# 实例化游标
cursor = conn.cursor()

try:
    # 开启事务
    conn.begin()

    # 删除数据
    cursor.execute("delete from student where id = 3")

    # 提交事务
    conn.commit()
    print('数据删除成功!')

except Exception as e:
    print('删除数据出现异常:', e)
    # 回滚事务
    conn.rollback()

# 关闭游标
cursor.close()

4.修改数据

使用Python向MySQL修改数据之前,需要先开启事务,通过UPDATE命令修改MySQL中的数据,再提交事务。

(1)使用MySQLdb时,修改数据的操作如下:

# 实例化游标
cursor = conn.cursor()

try:
    # 开启事务
    conn.begin()

    # 修改数据
    cursor.execute("update student set name='Jerry' where id = 2")

    # 提交事务
    conn.commit()
    print('数据修改成功!')

except Exception as e:
    print('修改数据出现异常:', e)
    # 回滚事务
    conn.rollback()

# 关闭游标
cursor.close()

(2)使用PyMySQL时,修改数据的操作如下:

# 实例化游标
cursor = conn.cursor()

try:
    # 开启事务
    conn.begin()

    # 修改数据
    cursor.execute("update student set name='Jerry' where id = 2")

    # 提交事务
    conn.commit()
    print('数据修改成功!')

except Exception as e:
    print('修改数据出现异常:', e)
    # 回滚事务
    conn.rollback()

# 关闭游标
cursor.close()

四、总结

通过本文的介绍,我们了解了如何使用Python通过MySQL连接库连接MySQL数据库,以及如何通过Python实现增加、删除、修改、查询MySQL中的数据。需要注意的是,数据库是一种非常灵活的数据存储方式,不同的应用场景,也需要根据实际需要进行数据库的优化和设置。同时也要注意保护MySQL的账号密码安全,避免因账号密码泄露而导致的信息泄漏、数据损毁等问题。