Python操作MySQL的方法详细解读

 更新时间:2023年11月02日 09:22:14   作者:观止study  
这篇文章主要介绍了Python操作MySQL的方法详细解读,在Python中,通过使用第三方库:pymysql,完成对MySQL数据库的操作,Python操作MySQL并不难,难点是如何编写合适的SQL语句,需要的朋友可以参考下

一.安装第三方库

在Python中,通过使用第三方库:pymysql,完成对MySQL数据库的操作。

安装指令:

pip install pymysql

二.在Python中使用

(1) 基本使用

导包-》建立连接-》进行xx操作-》关闭连接:

# 1.导入操作包
from pymysql import Connection

# 2.获取到MySQL数据库的连接对象
conn = Connection(
    host='localhost',  # 主机名或IP地址
    port=3306,  # 端口号,默认3306
    user='root',  # MySQL账号
    password='root'  # MySQL密码
)

# 打印MySQL版本信息
print(conn.get_server_info())

# 3.关闭到数据库的连接
conn.close()

(2) 执行建表SQL

导包-》建立连接-》获取游标对象-》选择数据库-》执行相应sql-》关闭连接:

from pymysql import Connection

# 获取到MySQL数据库的连接对象
conn = Connection(
    host='localhost',  # 主机名或IP地址
    port=3306,  # 端口号,默认3306
    user='root',  # MySQL账号
    password='root'  # MySQL密码
)

"""
执行非查询性质SQL
"""
# 获取游标对象(用于操作数据库)
cursor = conn.cursor()
# 选择要操作的数据库
conn.select_db("db1")
# 使用游标对象,执行建表sql语句
cursor.execute("CREATE TABLE tb_user(id INT,name VARCHAR(8),age int)")

# 关闭到数据库的连接
conn.close()

(3) 执行查询SQL

导包-》建立连接-》获取游标对象-》选择数据库-》执行相应sql-》获取查询数据,执行xx操作-》关闭连接:

from pymysql import Connection

# 获取到MySQL数据库的连接对象
conn = Connection(
    host='localhost',  # 主机名或IP地址
    port=3306,  # 端口号,默认3306
    user='root',  # MySQL账号
    password='root'  # MySQL密码
)

"""
执行查询性质SQL
"""
# 获取游标对象(用于操作数据库)
cursor = conn.cursor()
# 选择要操作的数据库
conn.select_db("db1")
# 使用游标对象,执行sql语句
cursor.execute("SELECT * FROM tb_user")
# 获取查询结果,返回元组对象
results: tuple = cursor.fetchall()
for result in results:
    print(result)

# 关闭到数据库的连接
conn.close()

(4) 执行插入SQL

导包-》建立连接-》获取游标对象-》选择数据库-》执行相应sql-》提交行为-》关闭连接:

from pymysql import Connection

# 获取到MySQL数据库的连接对象
conn = Connection(
    host='localhost',  # 主机名或IP地址
    port=3306,  # 端口号,默认3306
    user='root',  # MySQL账号
    password='root',  # MySQL密码
    autocommit=True  # 设置自动提交(commit)
)

"""
执行插入SQL
"""
# 获取游标对象(用于操作数据库)
cursor = conn.cursor()
# 选择要操作的数据库
conn.select_db("db1")
# 使用游标对象,执行sql语句
cursor.execute("Insert into tb_user values(1,'hhy','250')")
# 确认插入行为
# 如果在获取连接对象时设置自动提交可以不用再写。
conn.commit()

# 关闭到数据库的连接
conn.close()

(5) 执行修改SQL

导包-》建立连接-》获取游标对象-》选择数据库-》执行相应sql-》提交行为-》关闭连接:

from pymysql import Connection

# 获取到MySQL数据库的连接对象
conn = Connection(
    host='localhost',  # 主机名或IP地址
    port=3306,  # 端口号,默认3306
    user='root',  # MySQL账号
    password='root',  # MySQL密码
    autocommit=True  # 设置自动提交(commit)
)

"""
执行修改SQL
"""
# 获取游标对象(用于操作数据库)
cursor = conn.cursor()
# 选择要操作的数据库
conn.select_db("db1")
# 使用游标对象,执行sql语句
cursor.execute("UPDATE tb_user set username='hhy' where username = 'fsp'")
# 确认修改行为
# 如果在获取连接对象时设置自动提交可以不用再写。
conn.commit()

# 关闭到数据库的连接
conn.close()

(6) 执行删除SQL

导包-》建立连接-》获取游标对象-》选择数据库-》执行相应sql-》提交行为-》关闭连接:

from pymysql import Connection

# 获取到MySQL数据库的连接对象
conn = Connection(
    host='localhost',  # 主机名或IP地址
    port=3306,  # 端口号,默认3306
    user='root',  # MySQL账号
    password='root',  # MySQL密码
    autocommit=True  # 设置自动提交(commit)
)


"""
执行删除SQL
"""
# 获取游标对象(用于操作数据库)
cursor = conn.cursor()
# 选择要操作的数据库
conn.select_db("db1")
# 使用游标对象,执行sql语句
cursor.execute("DELETE from tb_user WHERE username = 'hhy'")
# 确认删除行为
# 如果在获取连接对象时设置自动提交可以不用再写。
conn.commit()

# 关闭到数据库的连接
conn.close()

(7) 小结

  • pymysql在执行数据插入或其它产生数据更改的SQL语句时,默认是需要提交更改的,即,需要通过代码“确认”这种更改行为。
  • 如果不想手动commit确认,可以在构建连接对象的时候,设置自动commit的属性。
  • 查询后,使用游标对象.fetchall()可得到全部的查询结果封装入嵌套元组内
  • 可使用游标对象.execute()执行SQL语句

三.全文概览

在这里插入图片描述

到此这篇关于Python操作MySQL的方法详细解读的文章就介绍到这了,更多相关Python操作MySQL内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • opencv实现图片模糊和锐化操作

    opencv实现图片模糊和锐化操作

    这篇文章主要为大家详细介绍了opencv实现图片模糊和锐化操作,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-11-11
  • Python 实现OpenCV格式和PIL.Image格式互转

    Python 实现OpenCV格式和PIL.Image格式互转

    今天小编就为大家分享一篇Python 实现OpenCV格式和PIL.Image格式互转,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01
  • python发布模块的步骤分享

    python发布模块的步骤分享

    这篇文章主要介绍了python发布模块的步骤,需要的朋友可以参考下
    2014-02-02
  • 关于python2 csv写入空白行的问题

    关于python2 csv写入空白行的问题

    今天小编就为大家分享一篇关于python 2 csv写入空白行的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06
  • 深入解析Python编程中super关键字的用法

    深入解析Python编程中super关键字的用法

    Python的子类调用父类成员时可以用到super关键字,初始化时需要注意super()和__init__()的区别,下面我们就来深入解析Python编程中super关键字的用法:
    2016-06-06
  • xadmin使用formfield_for_dbfield函数过滤下拉表单实例

    xadmin使用formfield_for_dbfield函数过滤下拉表单实例

    这篇文章主要介绍了xadmin使用formfield_for_dbfield函数过滤下拉表单实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04
  • 详解Numpy数组转置的三种方法T、transpose、swapaxes

    详解Numpy数组转置的三种方法T、transpose、swapaxes

    这篇文章主要介绍了详解Numpy数组转置的三种方法T、transpose、swapaxes,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-05-05
  • Python绘制3D图形

    Python绘制3D图形

    这篇文章主要介绍了Python绘制3D图形,希望本文的内容对大家的学习或者工作具有一定的参考学习价值
    2018-05-05
  • python实现贪吃蛇游戏源码

    python实现贪吃蛇游戏源码

    这篇文章主要为大家详细介绍了python实现贪吃蛇游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-03-03
  • Python pip更换清华源镜像的详细教程

    Python pip更换清华源镜像的详细教程

    大家经常会使用 pip 进行python 的第三方库安装,但是,有时会出现ERROR: No matching distribution found for PyQt6这类的错误,其实大部分原因是我们国内网络的问题,所以本文给大家介绍了Python pip更换清华源镜像的详细教程,需要的朋友可以参考下
    2024-09-09

最新评论