Python操作MySQL(十一)

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: Python操作MySQL(十一)

操作MySQL

一.安装第三方库

在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语句
相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
18天前
|
SQL 关系型数据库 MySQL
python操作mysql
python操作mysql
|
6月前
|
关系型数据库 MySQL 数据库
【100天精通python】Day32:使用python操作数据库_MySQL下载、安装、配置、使用实战
【100天精通python】Day32:使用python操作数据库_MySQL下载、安装、配置、使用实战
49 0
|
5月前
|
SQL 关系型数据库 MySQL
Python连接MySQL及查询实战
Python连接MySQL及查询实战
290 0
|
SQL 存储 网络协议
Python 对MySQL进行增删改查等一系列操作
Python 对MySQL进行增删改查等一系列操作
222 0
Python 对MySQL进行增删改查等一系列操作
|
关系型数据库 MySQL 数据库
Python 操作Mysql
pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同。
116 0
Python 操作Mysql
|
关系型数据库 MySQL 数据库
教你如何用Python连接MySQL,增删改查
教你如何用Python连接MySQL,增删改查
179 0
教你如何用Python连接MySQL,增删改查
|
SQL 关系型数据库 MySQL
python中常用的MySQL操作以及命令
python中常用的MySQL操作以及命令
python中常用的MySQL操作以及命令
|
SQL NoSQL 关系型数据库
第80天:Python 操作 MySQL
第80天:Python 操作 MySQL
217 0
第80天:Python 操作 MySQL
|
SQL 关系型数据库 Linux
Python操作MySql
一、linux客户端连接mssql server 1.linux下安装unixODBC     2.linux安装FreeTDS (1) 配置FreeTDS。 /etc/freetds/freetds.
1184 0