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下函数参数的传递(参数带星号的说明)
Sep 19 Python
以911新闻为例演示Python实现数据可视化的教程
Apr 23 Python
Python初学时购物车程序练习实例(推荐)
Aug 08 Python
Python3 XML 获取雅虎天气的实现方法
Feb 01 Python
python实现微信定时每天和女友发送消息
Apr 29 Python
python中 * 的用法详解
Jul 10 Python
快速解决vue.js 模板和jinja 模板冲突的问题
Jul 26 Python
python使用nibabel和sitk读取保存nii.gz文件实例
Jul 01 Python
面向新手解析python Beautiful Soup基本用法
Jul 11 Python
Python lambda表达式原理及用法解析
Aug 18 Python
python scipy 稀疏矩阵的使用说明
May 26 Python
python非标准时间的转换
Jul 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
vBulletin HACK----显示话题大小和打开新窗口于论坛索引页
2006/10/09 PHP
php Xdebug 调试扩展的安装与使用.
2010/03/13 PHP
php下连接ftp实现文件的上传、下载、删除文件实例代码
2010/06/03 PHP
PHP中其实也可以用方法链
2011/11/10 PHP
简单实用的PHP防注入类实例
2014/12/05 PHP
php建立Ftp连接的方法
2015/03/07 PHP
PHP实现QQ登录实例代码
2016/01/14 PHP
PHP实现cookie跨域session共享的方法分析
2019/08/23 PHP
解决php用mysql方式连接数据库出现Deprecated报错问题
2019/12/25 PHP
JavaScript中的关键字"VAR"使用详解 分享
2013/07/31 Javascript
jQuery$命名冲突怎么办如何解决
2014/01/16 Javascript
javascript自动给文本url地址增加链接的方法分享
2014/01/20 Javascript
js中arguments,caller,callee,apply的用法小结
2014/01/28 Javascript
JS组件Bootstrap Table表格多行拖拽效果实现代码
2015/12/08 Javascript
jQuery EasyUI常用数据验证汇总
2016/09/18 Javascript
最细致的vue.js基础语法 值得收藏!
2016/11/03 Javascript
详解基于angular路由的requireJs按需加载js
2017/01/20 Javascript
jQuery插件FusionCharts绘制2D柱状图和折线图的组合图效果示例【附demo源码】
2017/04/10 jQuery
vue移动端裁剪图片结合插件Cropper的使用实例代码
2017/07/10 Javascript
基于js实现抽红包并分配代码实例
2019/09/19 Javascript
node.js使用mongoose操作数据库实现购物车的增、删、改、查功能示例
2019/12/23 Javascript
Python版实现微信公众号扫码登陆
2020/05/28 Javascript
使用Python的Django框架结合jQuery实现AJAX购物车页面
2016/04/11 Python
13个最常用的Python深度学习库介绍
2017/10/28 Python
Python多线程及其基本使用方法实例分析
2019/10/29 Python
html5中如何将图片的绝对路径转换成文件对象
2018/01/11 HTML / CSS
html5 视频播放解决方案
2016/11/06 HTML / CSS
基于HTML5+tracking.js实现刷脸支付功能
2020/04/16 HTML / CSS
英国在线自行车店:Merlin Cycles
2018/08/20 全球购物
Roxy荷兰官方网站:冲浪、滑雪板、服装和配件
2019/10/22 全球购物
教职工代表大会主持词
2014/04/01 职场文书
竞选体育委员演讲稿
2014/04/26 职场文书
仓库保管员岗位职责
2015/02/09 职场文书
幼儿园开学报名通知
2015/07/16 职场文书
MySQL 5.7常见数据类型
2021/07/15 MySQL
Ruby GDBM操作简介及数据存储原理
2022/04/19 Ruby