python-数据库之pymysql模块(连接对象-游标对象-执行-获取值或者提交事务)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python-数据库之pymysql模块(连接对象-游标对象-执行-获取值或者提交事务),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2994字,纯文字阅读大概需要5分钟。
内容图文
![python-数据库之pymysql模块(连接对象-游标对象-执行-获取值或者提交事务)](/upload/InfoBanner/zyjiaocheng/1331/31d204f8a254472e898ad32c604c306e.jpg)
1、pymysql模块安装与引入
安装
pip install PyMySQL
引入
import pymysql
2、数据库的操作
下图查找连接数据库,源码的方法,以及参数怎么配置的可参考
数据库的操作步骤:
步骤1:引入pymysql模块 import pymysql
步骤2:连接数据库,返回连接对象 注意:charset="utf8"指定编码方式,没有-
con = pymysql.connect(host="127.0.0.1", user="root", port=3306, password="123456",charset="utf8")
步骤3:创建一个游标对象
cur = con.cursor()
步骤4:执行的sql语句
sql = "SELECT * FROM python.cfl_emp;"
步骤5:通过execute方法执行sql语句
res = cur.execute(sql) # 返回的是记录条数
步骤6:获取查询结果
# 获取查询到的返回集中的第一条数据
data_fetchone = cur.fetchone()
print(f"获取查询到的返回集中的第一条数据,data_fetchone = cur.fetchone() \n结果:{data_fetchone}")
# 获取查询到的所有数据
# 返回的是一个元组嵌套元组的数据
data_fetchall = cur.fetchall()
print(f"获取查询到的返回集中的所有数据,data_fetchall = cur.fetchall() \n结果:{data_fetchall}")
# 引入pymysql模块 import pymysql # 步骤1:连接数据库,返回连接对象 # charset="utf8"指定编码方式,没有- con = pymysql.connect(host="127.0.0.1", user="root", port=3306, password="123456",charset="utf8") # 步骤2:创建一个游标对象 cur = con.cursor() # 步骤3:执行的sql语句 sql = "SELECT * FROM python.cfl_emp;"# 步骤4:通过execute方法执行sql语句 res = cur.execute(sql) # 返回的是记录条数print(res) # 步骤5:获取查询结果# 获取查询到的返回集中的第一条数据 data_fetchone = cur.fetchone() print(f"获取查询到的返回集中的第一条数据,data_fetchone = cur.fetchone() \n结果:{data_fetchone}") # 获取查询到的所有数据 # 返回的是一个元组嵌套元组的数据 data_fetchall = cur.fetchall() print(f"获取查询到的返回集中的所有数据,data_fetchall = cur.fetchall() \n结果:{data_fetchall}")
注意点:pymysql模块操作数据时,默认开启的事务
在事务提交之前,所有对数据库进行修改的操作都不会同步到数据库
只有在提交事务之后,才会同步到数据
提交事务:连接对象.commit()
# 引入pymysql模块 import pymysql # 步骤1:连接数据库,返回连接对象 # charset="utf8"指定编码方式,没有- con = pymysql.connect(host="127.0.0.1", user="root", port=3306, password="123456",charset="utf8") # 步骤2:创建一个游标对象 cur = con.cursor() # 步骤3:执行的sql语句 select_sql = "select name from python.cfl_emp where id = 6;" cur.execute(select_sql) name_b = cur.fetchall() print(f"事务提交前:name为{name_b}") update_sql = "UPDATE python.cfl_emp SET name = ‘钱一3‘ WHERE id = 6;" cur.execute(update_sql) # 注意点:pymysql模块操作数据时,默认开启的事务 # 在事务提交之前,所有对数据库进行修改的操作都不会同步到数据库 # 只有在提交事务之后,才会同步到数据 # 提交事务:连接对象.commit() con.commit() cur.execute(select_sql) name_a = cur.fetchall() print(f"事务提交前:name为{name_a}")
执行结果:
3、简单封装数据库的操作-查询与增删改操作(因为修改需要提交事务)
分为查询和增删改操作
增删改操作需要连接对象.commit()
简单封装如下:
"" 封装一个做作mysql数据库的类 封装的功能: 1、数据的查询操作 2、增删改操作 """ import pymysql class MysqlBD: # __init__创建对象的时候初始化操作 def __init__(self): self.con = pymysql.connect(host="127.0.0.1", user="root", port=3306, password="123456",charset="utf8") self.cur = self.con.cursor() # 数据的查询操作 def find(self,sql): self.cur.execute(sql) datas = self.cur.fetchall() return datas # 增删改操作 def update(self,sql): self.cur.execute(sql) self.con.commit()
if __name__ == ‘__main__‘: db = MysqlBD() select_sql = "select name from python.cfl_emp where id = 6;" res = db.find(select_sql) print(f"查询结果:{res}") update_sql = "UPDATE python.cfl_emp SET name = ‘钱一1‘ WHERE id = 6;" res_1 = db.update(update_sql) select_sql = "select name from python.cfl_emp where id = 6;" res1 = db.find(select_sql) print(f"查询结果:{res1}")
执行结果:
原文:https://www.cnblogs.com/shishibuwan/p/12588289.html
内容总结
以上是互联网集市为您收集整理的python-数据库之pymysql模块(连接对象-游标对象-执行-获取值或者提交事务)全部内容,希望文章能够帮你解决python-数据库之pymysql模块(连接对象-游标对象-执行-获取值或者提交事务)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。