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实现将目录中TXT合并成一个大TXT文件的方法
Jul 15 Python
浅谈python中的实例方法、类方法和静态方法
Feb 17 Python
简单谈谈python中的语句和语法
Aug 10 Python
Python爬虫实现(伪)球迷速成
Jun 10 Python
Python json模块dumps、loads操作示例
Sep 06 Python
Django 缓存配置Redis使用详解
Jul 23 Python
Python hashlib加密模块常用方法解析
Dec 18 Python
tensorflow获取预训练模型某层参数并赋值到当前网络指定层方式
Jan 24 Python
python3.6连接mysql数据库及增删改查操作详解
Feb 10 Python
python传到前端的数据,双引号被转义的问题
Apr 03 Python
基于Python的自媒体小助手---登录页面的实现代码
Jun 29 Python
Python中request的基本使用解决乱码问题
Apr 12 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
smarty巧妙处理iframe中内容页的代码
2012/03/07 PHP
php while循环得到循环次数
2013/10/26 PHP
PHP+Ajax无刷新带进度条图片上传示例
2017/02/08 PHP
PHP实现微信模拟登陆并给用户发送消息的方法【文字,图片,图文】
2017/06/29 PHP
jQuery中dequeue()方法用法实例
2014/12/29 Javascript
JavaScript中的逻辑判断符&&、||与!介绍
2014/12/31 Javascript
JavaScript函数、闭包、原型、面向对象学习笔记
2018/09/06 Javascript
基于js实现逐步显示文字输出代码实例
2020/04/02 Javascript
JavaScript接口实现方法实例分析
2020/05/16 Javascript
[05:10]2014DOTA2国际邀请赛 通往胜利之匙赛场探秘之旅
2014/07/18 DOTA
[53:18]Spirit vs Liquid Supermajor小组赛A组 BO3 第三场 6.2
2018/06/03 DOTA
[00:36]我的中国心——Serenity vs Fnatic
2018/08/21 DOTA
用Python进行一些简单的自然语言处理的教程
2015/03/31 Python
Python脚本文件打包成可执行文件的方法
2015/06/02 Python
python制作爬虫爬取京东商品评论教程
2016/12/16 Python
python实现textrank关键词提取
2018/06/22 Python
kafka-python批量发送数据的实例
2018/12/27 Python
Python玩转Excel的读写改实例
2019/02/22 Python
Python正则表达式匹配和提取IP地址
2019/06/06 Python
python实现批量修改服务器密码的方法
2019/08/13 Python
详解Python list和numpy array的存储和读取方法
2019/11/06 Python
使用Python构造hive insert语句说明
2020/06/06 Python
python爬取音频下载的示例代码
2020/10/19 Python
Django contrib auth authenticate函数源码解析
2020/11/12 Python
python爬虫快速响应服务器的做法
2020/11/24 Python
精彩自我鉴定
2014/01/16 职场文书
最新会计专业求职信范文
2014/01/28 职场文书
《春雨》教学反思
2014/04/24 职场文书
群众路线教育实践活动整改落实情况汇报
2014/10/28 职场文书
2015年综治维稳工作总结
2015/04/07 职场文书
冬季作息时间调整通知
2015/04/24 职场文书
男方家长婚礼致辞
2015/07/27 职场文书
低门槛开发iOS、Android、小程序应用的前端框架详解
2021/10/16 Javascript
Nginx 安装SSL证书完成HTTPS部署
2022/04/28 Servers
Golang解析JSON对象
2022/04/30 Golang
nginx sticky实现基于cookie负载均衡示例详解
2022/12/24 Servers