pymysql模块使用简介与示例


Posted in Python onNovember 17, 2020

pymysql模块

pymysql是一个连接mysql数据库的第三方模块,可作为连接mysql数据库的客户端,对数据库进行增删改查操作

# 下载第三方模块:pip3 install pymysql

如何连接数据库并对数据库进行操作:

import pymysql # 连接mysql数据库的模块

# 1.连接数据库
"""
需要传入的参数:
  host=None,
  user=None,
  password="",
  database=None,
  port=0,
  charset='',
  autocommit=True
"""
client = pymysql.connect(
  host="127.0.0.1",
  port=3306,
  user="root",
  password="123",
  database="test",
  charset='utf8', # 一定不要写utf-8
  # 针对增删改操作,执行重要程度高,若要执行,必须要有一步确认的操作,autocommit=True默认对数据库进行增删改操作时自动提交至数据库;若此处不写,在下面代码 cursor_obj.execute(sql) 后面手动需要添加 client.commit()操作
  autocommit=True
)
# print(client)  # 打印结果:<pymysql.connections.Connection object at 0x00000000028A8B88>


# 2.获取游标对象。游标:可以用来提交sql命令
# pymysql.cursors.DictCursor:将查询出来的结果制作成字典的形式返回
cursor_obj = client.cursor(pymysql.cursors.DictCursor)

# 3.通过execute可以提交sql语句(增删改查都可以,可以使用try来捕获异常)
try:
  # 1.1)查数据
  sql = "select * from books" # 不用写分号

  # 1.2)插入数据
  # sql = "insert into student(id, name, sex, birthday, class) values('110', '张芳', '男', '1946', '95030')"  # 不用写分号

  # 2)提交sql语句
  res = cursor_obj.execute(sql)
  # print(res)  # execute返回的是当前sql语句所影响的行数
  # client.commit()  # 上面连接数据库的代码处已写了autocommit=True,此处注释掉

  # 3.1)提交后,通过cursor_obj对象.fetchall()  获取所有查询到的结果
  data = cursor_obj.fetchall()
  for i in data:
    print(i)

  # 3.2).fetchone()  只获取查询结果中的一条
  # print(cursor_obj.fetchone())

  # 3.3).fetchmany() 可以指定获取几条数据
  # print(cursor_obj.fetchmany(4))  # 获取四条数据

except Exception as e:
  print(e)

# 关闭游标
cursor_obj.close()
# 关闭客户端连接
client.close()

执行结果(以下为我本地数据库的数据):

{'BookID': 11425, 'BookTitle': 'Python', 'Copyright': 1984}
{'BookID': 12786, 'BookTitle': 'Java', 'Copyright': 1934}
{'BookID': 13331, 'BookTitle': 'MySQL', 'Copyright': 1919}
{'BookID': 14356, 'BookTitle': 'PHP', 'Copyright': 1966}
{'BookID': 15729, 'BookTitle': 'PERL', 'Copyright': 1932}
{'BookID': 16284, 'BookTitle': 'Oracle', 'Copyright': 1996}

pymysql模块使用简介与示例

以上就是pymysql模块使用简介与示例的详细内容,更多关于pymysql模块的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python从ftp下载数据保存实例
Nov 20 Python
python在命令行下使用google翻译(带语音)
Jan 16 Python
Python爬取京东的商品分类与链接
Aug 26 Python
Python 字符串大小写转换的简单实例
Jan 21 Python
简单了解Django模板的使用
Dec 20 Python
Python实现发送与接收邮件的方法详解
Mar 28 Python
python实现扫描日志关键字的示例
Apr 28 Python
Python模块的加载讲解
Jan 15 Python
对PyQt5基本窗口控件 QMainWindow的使用详解
Jun 19 Python
selenium+PhantomJS爬取豆瓣读书
Aug 26 Python
结合OpenCV与TensorFlow进行人脸识别的实现
Oct 10 Python
python 字段拆分详解
Dec 17 Python
Python模拟登录requests.Session应用详解
Nov 17 #Python
关于python scrapy中添加cookie踩坑记录
Nov 17 #Python
python中strip(),lstrip(),rstrip()函数的使用讲解
Nov 17 #Python
PyTorch预训练Bert模型的示例
Nov 17 #Python
python 下载文件的多种方法汇总
Nov 17 #Python
python跨文件使用全局变量的实现
Nov 17 #Python
Python中logging日志的四个等级和使用
Nov 17 #Python
You might like
用PHP实现读取和编写XML DOM代码
2010/04/07 PHP
PHP异常处理浅析
2015/05/12 PHP
Apache PHP MySql安装配置图文教程
2016/08/27 PHP
JavaScript设置FieldSet展开与收缩
2009/05/15 Javascript
js类型检查实现代码
2010/10/29 Javascript
仅IE支持clearAttributes/mergeAttributes方法使用介绍
2012/05/04 Javascript
关于jquery.validate1.9.0前台验证的使用介绍
2013/04/26 Javascript
javascript实现的DES加密示例
2013/10/30 Javascript
Js Jquery创建一个弹出层可加载一个页面
2014/05/08 Javascript
理运用命名空间让js不产生冲突避免全局变量的泛滥
2014/06/15 Javascript
JavaScript简单表格编辑功能实现方法
2015/04/16 Javascript
ionic在开发ios系统微信时键盘挡住输入框的解决方法(键盘弹出问题)
2016/09/06 Javascript
jQuery实现可展开折叠的导航效果示例
2016/09/12 Javascript
Vue.js 2.0 移动端拍照压缩图片预览及上传实例
2017/04/27 Javascript
JavaScript模拟实现封装的三种方式及写法区别
2017/10/27 Javascript
layDate插件设置开始和结束时间
2018/11/15 Javascript
vue 监听窗口变化对页面部分元素重新渲染操作
2020/07/28 Javascript
Vue项目中使用mock.js的完整步骤
2021/01/12 Vue.js
python实现telnet客户端的方法
2015/04/15 Python
Python实现简单的代理服务器
2015/07/25 Python
Windows下Anaconda的安装和简单使用方法
2018/01/04 Python
python实现两张图片的像素融合
2019/02/23 Python
手把手教你用Django执行原生SQL的方法
2021/02/18 Python
用gpu训练好的神经网络,用tensorflow-cpu跑出错的原因及解决方案
2021/03/03 Python
基于css3的属性transition制作菜单导航效果
2015/09/01 HTML / CSS
世界上最大的网络主机公司:1&1
2016/10/12 全球购物
波兰购物网站:MALL.PL
2019/05/01 全球购物
介绍一下木马病毒的种类
2015/07/26 面试题
介绍一下Linux内核的排队自旋锁
2014/08/27 面试题
物控部经理职务说明书
2014/02/25 职场文书
八项规定个人对照检查材料思想汇报
2014/09/25 职场文书
团日活动总结格式
2015/05/11 职场文书
病假证明模板
2015/06/19 职场文书
使用Pytorch实现two-head(多输出)模型的操作
2021/05/28 Python
使用Python拟合函数曲线
2022/04/14 Python
ssh服务器拒绝了密码 请再试一次已解决(亲测有效)
2022/08/14 Servers