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网络编程学习笔记(八):XML生成与解析(DOM、ElementTree)
Jun 09 Python
Python中的rfind()方法使用详解
May 19 Python
Python中字典的基本知识初步介绍
May 21 Python
python 2.7.14安装图文教程
Apr 08 Python
python导入模块交叉引用的方法
Jan 19 Python
一文了解Python并发编程的工程实现方法
May 31 Python
python实现人像动漫化的示例代码
May 17 Python
使用OpenCV去除面积较小的连通域
Jul 05 Python
opencv 图像腐蚀和图像膨胀的实现
Jul 07 Python
python根据用户需求输入想爬取的内容及页数爬取图片方法详解
Aug 03 Python
Python在后台自动解压各种压缩文件的实现方法
Nov 10 Python
pandas按条件筛选数据的实现
Feb 20 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
ThinkPHP关于session的操作方法汇总
2014/07/18 PHP
PHP抓取网页、解析HTML常用的方法总结
2015/07/01 PHP
PHP文件上传操作实例详解
2016/09/27 PHP
PHP获取访问设备信息的方法示例
2019/02/20 PHP
tp5.1 框架join方法用法实例分析
2020/05/26 PHP
关于JavaScript的with 语句的使用方法
2011/05/09 Javascript
网站如何做到完全不需要jQuery也可以满足简单需求
2013/06/27 Javascript
jquery仿搜索自动联想功能代码
2014/05/23 Javascript
使用jquery animate创建平滑滚动效果(可以是到顶部、到底部或指定地方)
2014/05/27 Javascript
浅析JavaScript基本类型与引用类型
2014/05/28 Javascript
javascript中innerText和innerHTML属性用法实例分析
2015/05/13 Javascript
原生js实现移动端瀑布流式代码示例
2015/12/18 Javascript
Cookies 和 Session的详解及区别
2017/04/21 Javascript
微信小程序获取用户信息的两种方法wx.getUserInfo与open-data实例分析
2019/05/03 Javascript
利用js-cookie实现前端设置缓存数据定时失效
2019/06/18 Javascript
Python通过websocket与js客户端通信示例分析
2014/06/25 Python
python实现连接mongodb的方法
2015/05/08 Python
Python-OpenCV基本操作方法详解
2018/04/02 Python
python读取图片并修改格式与大小的方法
2018/07/24 Python
Python自动化导出zabbix数据并发邮件脚本
2019/08/16 Python
实例讲解Python 迭代器与生成器
2020/07/08 Python
乐高官方旗舰店:LEGO积木玩具
2019/04/06 全球购物
英国领先的体验日提供商:Buyagift
2019/04/19 全球购物
瑞典网上购买现代和复古家具:Reforma
2019/10/21 全球购物
Traffic People官网:女式花裙、上衣和连身裤
2020/10/12 全球购物
如何将无状态会话Bean发布为WEB服务,只有无状态会话Bean可以发布为WEB服务?
2015/12/03 面试题
单位办理社保介绍信
2014/01/10 职场文书
给老婆的搞笑检讨书
2014/01/12 职场文书
《雨霖铃》教学反思
2014/02/22 职场文书
体育系毕业生求职自荐信
2014/04/16 职场文书
教师竞聘演讲稿
2014/05/16 职场文书
2015年办公室工作总结范文
2015/03/31 职场文书
python3实现Dijkstra算法最短路径的实现
2021/05/12 Python
JavaScript展开运算符和剩余运算符的区别详解
2022/02/18 Javascript
node快速搭建后台的实现步骤
2022/02/18 NodeJs
5人制售《绝地求生》游戏外挂获利500多万元 被判刑
2022/03/31 其他游戏