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遍历某目录下的所有文件夹与文件路径
Mar 15 Python
django静态文件加载的方法
May 20 Python
基于python中theano库的线性回归
Aug 31 Python
python获取交互式ssh shell的方法
Feb 14 Python
Python处理时间日期坐标轴过程详解
Jun 25 Python
python爬虫 execjs安装配置及使用
Jul 30 Python
使用python从三个角度解决josephus问题的方法
Mar 27 Python
python实现将列表中各个值快速赋值给多个变量
Apr 02 Python
django数据模型中null和blank的区别说明
Sep 02 Python
Python xmltodict模块安装及代码实例
Oct 05 Python
python爬虫用request库处理cookie的实例讲解
Feb 20 Python
Django和Ueditor自定义存储上传文件的文件名
Feb 25 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
PHP 简单日历实现代码
2009/10/28 PHP
php中使用preg_match_all匹配文章中的图片
2013/02/06 PHP
浅析php工厂模式
2014/11/25 PHP
PHP实现四种基础排序算法的运行时间比较(推荐)
2016/08/11 PHP
简单实用的PHP文本缓存类实例
2019/03/22 PHP
bcastr2.0 通用的图片浏览器
2006/11/22 Javascript
jQuery中选择器小问题(新人难免遇到)
2014/03/31 Javascript
JavaScript的removeChild()函数用法详解
2015/12/27 Javascript
jQuery事件对象总结
2016/10/17 Javascript
微信小程序中hidden不生效原因的解决办法
2017/04/26 Javascript
JS自定义函数实现时间戳转换成date的方法示例
2017/08/27 Javascript
JS与HTML结合实现流程进度展示条思路详解
2017/09/03 Javascript
vue中将html字符串转换成html后遇到的问题小结
2018/12/10 Javascript
浅探express路由和中间件的实现
2019/09/30 Javascript
Python处理字符串之isspace()方法的使用
2015/05/19 Python
python 读写txt文件 json文件的实现方法
2016/10/22 Python
Python3调用微信企业号API发送文本消息代码示例
2017/11/10 Python
Python3之简单搭建自带服务器的实例讲解
2018/06/04 Python
Python操作MySQL数据库的方法
2018/06/20 Python
python中csv文件的若干读写方法小结
2018/07/04 Python
python opencv调用笔记本摄像头
2019/08/28 Python
Python confluent kafka客户端配置kerberos认证流程详解
2020/10/12 Python
利用CSS3制作简单的3d半透明立方体图片展示
2017/03/25 HTML / CSS
详解css3 Transition属性(平滑过渡菜单栏案例)
2017/09/05 HTML / CSS
HTML5中语义化 b 和 i 标签
2008/10/17 HTML / CSS
大学生最常用的自我评价
2013/12/07 职场文书
校园之声广播稿
2014/01/31 职场文书
运动会通讯稿300字
2014/02/02 职场文书
社区道德讲堂实施方案
2014/03/21 职场文书
食品销售计划书
2014/04/26 职场文书
餐饮商业计划书范文
2014/04/29 职场文书
2015年七一建党节活动总结
2015/03/20 职场文书
2016年学生会感恩节活动总结
2016/04/01 职场文书
详解Flask开发技巧之异常处理
2021/06/15 Python
Js类的构建与继承案例详解
2021/09/15 Javascript
Windows7下FTP搭建图文教程
2022/08/05 Servers