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 相关文章推荐
python3.0 字典key排序
Dec 24 Python
python通过imaplib模块读取gmail里邮件的方法
May 08 Python
使用pdb模块调试Python程序实例
Jun 02 Python
python开发之文件操作用法实例
Nov 13 Python
详解python进行mp3格式判断
Dec 23 Python
numpy中的delete删除数组整行和整列的实例
May 09 Python
python使用PIL给图片添加文字生成海报示例
Aug 17 Python
Python实现深度遍历和广度遍历的方法
Jan 22 Python
pow在python中的含义及用法
Jul 11 Python
python集合的创建、添加及删除操作示例
Oct 08 Python
Python列表元素常见操作简单示例
Oct 25 Python
Python基础之元类详解
Apr 29 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中instanceof 与 is_a()区别分析
2015/03/03 PHP
PHP的介绍以及优势详细分析
2019/09/05 PHP
web页面数据展示新想法(json)
2010/06/08 Javascript
javaScript函数中执行C#代码中的函数方法总结
2013/08/07 Javascript
javascript自然分类法算法实现代码
2013/10/11 Javascript
Javascript 修改String 对象 增加去除空格功能(示例代码)
2013/11/30 Javascript
浅谈javascript 归并方法
2015/01/21 Javascript
jQuery实现二级下拉菜单效果
2016/01/05 Javascript
全面解析Bootstrap中tooltip、popover的使用方法
2016/06/13 Javascript
AngularJS 入门教程之事件处理器详解
2016/08/19 Javascript
JavaScript中的await/async的作用和用法
2016/10/31 Javascript
面试常见的js算法题
2017/03/23 Javascript
微信小程序 密码输入(源码下载)
2017/06/27 Javascript
Angularjs实现下拉框联动的示例代码
2017/08/22 Javascript
AngularJs 终极购物车(实例讲解)
2017/11/08 Javascript
nuxt.js 缓存实践
2018/06/25 Javascript
js实现图片上传并预览功能
2018/08/06 Javascript
vue-cli+axios实现文件上传下载功能(下载接收后台返回文件流)
2019/05/10 Javascript
发布订阅模式在vue中的实际运用实例详解
2019/06/09 Javascript
Vue两个版本的区别和使用方法(更深层次了解)
2020/02/16 Javascript
python中zip()方法应用实例分析
2016/04/16 Python
Python中一行和多行import模块问题
2018/04/01 Python
python3 kmp 字符串匹配的方法
2018/07/07 Python
Linux下Python安装完成后使用pip命令的详细教程
2018/11/22 Python
django2.2 和 PyMySQL版本兼容问题
2020/02/17 Python
opencv+python实现均值滤波
2020/02/19 Python
CSS3不透明度实例讲解
2016/04/26 HTML / CSS
意大利奢侈品多品牌集合店:TheDoubleF
2019/08/24 全球购物
新加坡鲜花速递/新加坡网上花店:Ferns N Petals
2020/08/29 全球购物
学生学习总结的自我评价
2013/10/22 职场文书
医生进修自我鉴定
2014/01/19 职场文书
给校长的一封建议书
2014/03/12 职场文书
高考标语大全
2014/06/05 职场文书
采购员岗位职责
2015/02/03 职场文书
python调用ffmpeg命令行工具便捷操作视频示例实现过程
2021/11/01 Python
Java中的继承、多态以及封装
2022/04/11 Java/Android