python连接mysql数据库并读取数据的实现


Posted in Python onSeptember 25, 2020

1、安装pymysql包

pip install pymysql

注:
MySQLdb只支持python2,pymysql支持python3

2、连接数据

import pymysql 
import pandas as pd
from pandas import DataFrame as df
conn = pymysql.Connect(
  host = 'IP地址', 
  port = 端口号, 
  user = '用户名', 
  passwd = '用户密码', 
  db = '数据库名称', 
  charset = 'utf8'
  )

注:

查看本机IP地址:cmd输入:ipconfig,IPv4 地址

pymysql.Connect参数中的 host 服务器地址,本机可用'localhost'

3、读取数据

(1)使用read_sql读取数据

sql = 'select * from testa'
data = pd.read_sql(sql, conn)

(2)使用cursor读取数据

sql = 'select * from testa'
cur = conn.cursor() 
try: # 使用异常处理,以防程序无法正常运行
  cur.execute(sql) 
  data = df(cur.fetchall(), columns = [col[0] for col in cur.description]) 
except Exception as e:
  conn.rollback() # 发生错误时回滚
  print('事务处理失败', e)
else:
  # conn.commit() # 事务提交
  print('事务处理成功', cur.rowcount)
cur.close()

注:

read_sql、cursor游标区别:

  • read_sql :只能执行查询数据
  • cursor游标 :可以执行查询、插入、更新、删除等操作

cur.execute(sql) :

  • 执行具体数据库的操作

cur.fetchone() :

  • 获取单条数据

cur.fetchmany(3) :

  • 获取前3条数据

cur.fetchall() :

  • 获取所有数据

查询结果中含字段名称:

# 法1:
 cur = conn.cursor(cursor = pymysql.cursors.DictCursor) # 设置成DictCursor,结果包含字段名称
 cur.execute(sql) 
 data = df(cur.fetchall()) 
 
 # 法2:
 cur = conn.cursor()
 cur.execute(sql) 
 data = df(cur.fetchall(),columns = [col[0] for col in cur.description])

conn.commit() :

  • 插入、更新、删除等操作需用该语句;查询、创建数据库、数据表则不需要

cur.rowcount :

  •  返回执行的操作条数

4、关闭数据库

conn.close()

到此这篇关于python连接mysql数据库并读取数据的实现的文章就介绍到这了,更多相关python连接mysql内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python中的引用和拷贝浅析
Nov 22 Python
python 全文检索引擎详解
Apr 25 Python
Python基于Pymssql模块实现连接SQL Server数据库的方法详解
Jul 20 Python
python os.path模块常用方法实例详解
Sep 16 Python
selenium+python自动化测试之页面元素定位
Jan 23 Python
pandas 数据结构之Series的使用方法
Jun 21 Python
使用Python快乐学数学Github万星神器Manim简介
Aug 07 Python
Python PyInstaller库基本使用方法分析
Dec 12 Python
对tensorflow中cifar-10文档的Read操作详解
Feb 10 Python
浅析关于Keras的安装(pycharm)和初步理解
Oct 23 Python
Python基于execjs运行js过程解析
Nov 27 Python
Python  Asyncio模块实现的生产消费者模型的方法
Mar 01 Python
Python3如何使用tabulate打印数据
Sep 25 #Python
如何基于pandas读取csv后合并两个股票
Sep 25 #Python
matplotlib设置颜色、标记、线条,让你的图像更加丰富(推荐)
Sep 25 #Python
python实现人性化显示金额数字实例详解
Sep 25 #Python
python 绘制正态曲线的示例
Sep 24 #Python
Python爬取网页信息的示例
Sep 24 #Python
详解用python -m http.server搭一个简易的本地局域网
Sep 24 #Python
You might like
增加反向链接的101个方法 站长推荐
2007/01/31 PHP
PHP中的string类型使用说明
2010/07/27 PHP
php include加载文件两种方式效率比较
2010/08/08 PHP
DEDE采集大师官方留后门的删除办法
2011/01/08 PHP
thinkPHP框架实现类似java过滤器的简单方法示例
2018/09/05 PHP
实例讲解PHP中使用命名空间
2019/01/27 PHP
php实现微信分享朋友链接功能
2019/02/18 PHP
Laravel 5.5 异常处理 & 错误日志的解决
2019/10/17 PHP
我的Node.js学习之路(三)--node.js作用、回调、同步和异步代码 以及事件循环
2014/07/06 Javascript
js清空表单数据的两种方式(遍历+reset)
2014/07/18 Javascript
基于Jquery和CSS3制作数字时钟附源码下载(CSS3篇)
2015/11/24 Javascript
动态创建Angular组件实现popup弹窗功能
2017/09/15 Javascript
Vue 项目分环境打包的方法示例
2018/08/03 Javascript
Node.JS发送http请求批量检查文件中的网页地址、服务是否有效可用
2019/11/20 Javascript
[43:03]完美世界DOTA2联赛PWL S2 PXG vs Magma 第二场 11.21
2020/11/24 DOTA
python+matplotlib绘制简单的海豚(顶点和节点的操作)
2018/01/02 Python
Python实现修改文件内容的方法分析
2018/03/25 Python
python使用turtle绘制分形树
2018/06/22 Python
Python装饰器用法实例分析
2019/01/14 Python
python 字典访问的三种方法小结
2019/12/05 Python
python中selenium库的基本使用详解
2020/07/31 Python
Reebok俄罗斯官方网上商店:购买锐步运动服装和鞋子
2016/09/26 全球购物
以设计师精品品质提供快速时尚:PopJulia
2018/01/09 全球购物
简单说下OSPF的操作过程
2014/08/13 面试题
高中英语教学反思
2014/02/04 职场文书
营销总监岗位职责范本
2014/02/26 职场文书
优秀经理获奖感言
2014/03/04 职场文书
《搭石》教学反思
2014/04/07 职场文书
家具商场的活动方案
2014/08/16 职场文书
股东出资证明书(正规版)
2014/09/24 职场文书
党员民主评议自我评价
2014/10/20 职场文书
少先队工作总结2015
2015/05/13 职场文书
2015年小学总务工作总结
2015/07/21 职场文书
nginx 反向代理之 proxy_pass的实现
2021/03/31 Servers
一起来看看Vue的核心原理剖析
2022/03/24 Vue.js
JS前端canvas交互实现拖拽旋转及缩放示例
2022/08/05 Javascript