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 相关文章推荐
Python获取linux主机ip的简单实现方法
Apr 18 Python
Python实现将一个大文件按段落分隔为多个小文件的简单操作方法
Apr 17 Python
python3.5 email实现发送邮件功能
May 22 Python
django框架实现一次性上传多个文件功能示例【批量上传】
Jun 19 Python
解决python web项目意外关闭,但占用端口的问题
Dec 17 Python
pycharm 设置项目的根目录教程
Feb 12 Python
python使用pandas抽样训练数据中某个类别实例
Feb 28 Python
python中sklearn的pipeline模块实例详解
May 21 Python
Django创建一个后台的基本步骤记录
Oct 02 Python
Python一些基本的图像操作和处理总结
Jun 23 Python
python脚本框架webpy模板控制结构
Nov 20 Python
python数字图像处理之图像自动阈值分割示例
Jun 28 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
论建造顺序的重要性
2020/03/04 星际争霸
php Rename 更改文件、文件夹名称
2011/05/24 PHP
php自定义session示例分享
2014/04/22 PHP
thinkPHP实现表单自动验证
2014/12/24 PHP
PHP四种基本排序算法示例
2015/04/09 PHP
php通过curl模拟登陆DZ论坛
2015/05/11 PHP
php统计数组元素个数的方法
2015/07/02 PHP
jQuery技巧大放送 学习jquery的朋友可以看下
2009/10/14 Javascript
JS window.opener返回父页面的应用
2009/10/24 Javascript
jquery实现图片翻页效果
2013/12/23 Javascript
FF IE浏览器修改标签透明度的方法
2014/01/27 Javascript
解释&&和||在javascript中的另类用法
2014/07/28 Javascript
网站基于flash实现的Banner图切换效果代码
2014/10/14 Javascript
javascript跑马灯抽奖实例讲解
2020/04/17 Javascript
js阻止默认浏览器行为与冒泡行为的实现代码
2016/05/15 Javascript
jQuery向父辈遍历的简单方法
2016/09/18 Javascript
Jquery AJAX POST与GET之间的区别详细介绍
2016/10/17 Javascript
关于json字符串与实体之间的严格验证代码
2016/11/10 Javascript
JavaScript评论点赞功能的实现方法
2017/03/13 Javascript
微信小程序 图片上传实例详解
2017/05/05 Javascript
自定义事件解决重复请求BUG的问题
2017/07/11 Javascript
Vue render深入开发讲解
2018/04/13 Javascript
jQuery 同时获取多个标签的指定内容并储存为数组
2018/11/20 jQuery
深入理解javascript prototype的相关知识
2019/09/19 Javascript
JS实现进度条动态加载特效
2020/03/25 Javascript
js实现简单选项卡制作
2020/08/05 Javascript
js禁止查看源文件屏蔽Ctrl+u/s、F12、右键等兼容IE火狐chrome
2020/10/01 Javascript
python安装numpy&安装matplotlib& scipy的教程
2017/11/02 Python
对python中Matplotlib的坐标轴的坐标区间的设定实例讲解
2018/05/25 Python
python批量赋值操作实例
2018/10/22 Python
python画柱状图--不同颜色并显示数值的方法
2018/12/13 Python
德国健康生活方式网上商店:Landkaufhaus Mayer
2019/03/12 全球购物
平面设计师岗位职责
2014/09/18 职场文书
我的职业生涯规划:打造自己的运动帝国
2014/09/18 职场文书
安全生产会议制度
2015/08/06 职场文书
MySQL自定义函数及触发器
2022/08/05 MySQL