python3 pandas 读取MySQL数据和插入的实例


Posted in Python onApril 20, 2018

python 代码如下:

# -*- coding:utf-8 -*-
import pandas as pd
import pymysql
import sys
from sqlalchemy import create_engine

def read_mysql_and_insert():
 
 try:
  conn = pymysql.connect(host='localhost',user='user1',password='123456',db='test',charset='utf8')
 except pymysql.err.OperationalError as e:
  print('Error is '+str(e))
  sys.exit()
  
 try:
  engine = create_engine('mysql+pymysql://user1:123456@localhost:3306/test')
 except sqlalchemy.exc.OperationalError as e:
  print('Error is '+str(e))
  sys.exit()
 except sqlalchemy.exc.InternalError as e:
  print('Error is '+str(e))
  sys.exit()
  
 try: 
  sql = 'select * from sum_case'
  df = pd.read_sql(sql, con=conn) 
 except pymysql.err.ProgrammingError as e:
  print('Error is '+str(e))
  sys.exit() 

 print(df.head())
 df.to_sql(name='sum_case_1',con=engine,if_exists='append',index=False)
 conn.close()
 print('ok')
 
if __name__ == '__main__': 
 df = read_mysql_and_insert()

另外需要注意的还有。

1) test数据库里有两个表,建表语句如下:

CREATE TABLE `sum_case` ( 
 `type_id` tinyint(2) DEFAULT NULL, 
 `type_name` varchar(5) DEFAULT NULL, 
 KEY `b` (`type_name`) 
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `sum_case_1` ( 
 `type_id` tinyint(2) DEFAULT NULL, 
 `type_name` varchar(5) DEFAULT NULL, 
 KEY `b` (`type_name`) 
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

插入初始数据

insert into sum_case (type_id,type_name) values (1,'a'),(2,'b'),(3,'c')

2)创建user1用户

grant select, update,insert on test.* to 'user1'@'localhost' identified by '123456'

以上这篇python3 pandas 读取MySQL数据和插入的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
c++生成dll使用python调用dll的方法
Jan 20 Python
python实现的简单RPG游戏流程实例
Jun 28 Python
Linux中安装Python的交互式解释器IPython的教程
Jun 13 Python
详解python调度框架APScheduler使用
Mar 28 Python
浅谈解除装饰器作用(python3新增)
Oct 15 Python
Python实现的栈、队列、文件目录遍历操作示例
May 06 Python
Django Form 实时从数据库中获取数据的操作方法
Jul 25 Python
Python Request爬取seo.chinaz.com百度权重网站的查询结果过程解析
Aug 13 Python
pytorch在fintune时将sequential中的层输出方法,以vgg为例
Aug 20 Python
python3文件复制、延迟文件复制任务的实现方法
Sep 02 Python
Python爬虫 urllib2的使用方法详解
Sep 23 Python
python实现Pyecharts实现动态地图(Map、Geo)
Mar 25 Python
PyQt5每天必学之事件与信号
Apr 20 #Python
pandas groupby 分组取每组的前几行记录方法
Apr 20 #Python
基于pandas数据样本行列选取的方法
Apr 20 #Python
pandas实现选取特定索引的行
Apr 20 #Python
PyQT实现多窗口切换
Apr 20 #Python
使用实现pandas读取csv文件指定的前几行
Apr 20 #Python
浅析python打包工具distutils、setuptools
Apr 20 #Python
You might like
PHP中ID设置自增后不连续的原因分析及解决办法
2016/08/21 PHP
php执行多个存储过程的方法【基于thinkPHP】
2016/11/08 PHP
PHP实现计算器小功能
2020/08/28 PHP
使用prototype.js进行异步操作
2007/02/07 Javascript
js以对象为索引的关联数组
2010/07/04 Javascript
js 第二代身份证号码的验证机制代码
2011/05/12 Javascript
javascript椭圆旋转相册实现代码
2012/01/16 Javascript
javascipt基础内容--需要注意的细节
2013/04/10 Javascript
Jquery的each里用return true或false代替break或continue
2014/05/21 Javascript
javascript获取checkbox复选框获取选中的选项
2014/08/12 Javascript
JavaScript变量声明详解
2014/11/27 Javascript
动态加载js文件简单示例
2016/04/21 Javascript
jquery 动态合并单元格的实现方法
2016/08/26 Javascript
jQuery获取select选中的option的value值实现方法
2016/08/29 Javascript
详谈jQuery Ajax(load,post,get,ajax)的用法
2017/03/02 Javascript
windows下vue.js开发环境搭建教程
2017/03/20 Javascript
angularjs实现时间轴效果的示例代码
2017/11/29 Javascript
使用Vue实现图片上传的三种方式
2018/07/17 Javascript
JS实现的贪吃蛇游戏完整实例
2019/01/18 Javascript
细述Javascript的加法运算符的具体使用
2019/10/18 Javascript
使用JavaScript实现网页秒表功能(含开始、暂停、继续、重置功能)
2020/06/05 Javascript
Python操作MongoDB数据库PyMongo库使用方法
2015/04/27 Python
python多线程抽象编程模型详解
2019/03/20 Python
Python学习笔记之自定义函数用法详解
2019/06/08 Python
浅谈Django+Gunicorn+Nginx部署之路
2019/09/11 Python
简单了解Java Netty Reactor三种线程模型
2020/04/26 Python
Python drop方法删除列之inplace参数实例
2020/06/27 Python
Python Selenium自动化获取页面信息的方法
2020/08/31 Python
Html5上传图片 移动端、PC端通用代码
2016/06/08 HTML / CSS
Html5原创俄罗斯方块(基于canvas)
2019/01/07 HTML / CSS
介绍下WebSphere的安全性
2013/01/31 面试题
2014年班主任德育工作总结
2014/12/05 职场文书
2014年教研室工作总结
2014/12/06 职场文书
党员转正申请报告
2015/05/15 职场文书
幼儿园小班开学寄语
2015/05/27 职场文书
python中__slots__节约内存的具体做法
2021/07/04 Python