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 相关文章推荐
将Django框架和遗留的Web应用集成的方法
Jul 24 Python
python下setuptools的安装详解及No module named setuptools的解决方法
Jul 06 Python
Python下调用Linux的Shell命令的方法
Jun 12 Python
python实现朴素贝叶斯算法
Nov 19 Python
Python使用crontab模块设置和清除定时任务操作详解
Apr 09 Python
详解Python 字符串相似性的几种度量方法
Aug 29 Python
浅谈python中统计计数的几种方法和Counter详解
Nov 07 Python
Python 限定函数参数的类型及默认值方式
Dec 24 Python
Python实现Wordcloud生成词云图的示例
Mar 30 Python
python 3.8.3 安装配置图文教程
May 21 Python
浅析PyCharm 的初始设置(知道)
Oct 12 Python
PyTorch 如何检查模型梯度是否可导
Jun 05 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&mysql(二)
2006/10/09 PHP
php学习之流程控制实现代码
2011/06/09 PHP
再推荐十款免费的php开发工具
2015/11/09 PHP
日期函数扩展类Ver0.1.1
2006/09/07 Javascript
JavaScript 字符串连接性能优化
2008/12/20 Javascript
浅谈javascript 面向对象编程
2009/10/28 Javascript
cloudgamer出品ImageZoom 图片放大效果
2010/04/01 Javascript
EditPlus注册码生成器(js代码实现)
2013/03/25 Javascript
jQuery布局插件UI Layout简介及使用方法
2013/04/03 Javascript
JS转换HTML转义符的方法
2016/08/24 Javascript
利用Node.js制作爬取大众点评的爬虫
2016/09/22 Javascript
Bootstrap Navbar Component实现响应式导航
2016/10/08 Javascript
canvas实现流星雨的背景效果
2017/01/13 Javascript
js构造函数创建对象是否加new问题
2018/01/22 Javascript
解决element UI 自定义传参的问题
2018/08/22 Javascript
vue 中 命名视图的用法实例详解
2019/08/14 Javascript
[01:32]2016国际邀请赛中国区预选赛CDEC战队教练采访
2016/06/26 DOTA
[01:00:14]DOTA2官方TI8总决赛纪录片 真视界True Sight
2019/01/16 DOTA
用Python写王者荣耀刷金币脚本
2017/12/21 Python
wtfPython—Python中一组有趣微妙的代码【收藏】
2018/08/31 Python
pyhanlp安装介绍和简单应用
2019/02/22 Python
Python实现的银行系统模拟程序完整案例
2019/04/12 Python
python中property和setter装饰器用法
2019/12/19 Python
python已协程方式处理任务实现过程
2019/12/27 Python
浅谈pandas.cut与pandas.qcut的使用方法及区别
2020/03/03 Python
Pytorch数据拼接与拆分操作实现图解
2020/04/30 Python
浅析python 动态库m.so.1.0错误问题
2020/05/09 Python
Pycharm github配置实现过程图解
2020/10/13 Python
html5中JavaScript removeChild 删除所有节点
2014/05/16 HTML / CSS
水果花束:Fruit Bouquets
2017/12/20 全球购物
Java面试中常遇到的问题,也是需要注意的几点
2013/08/30 面试题
班组长岗位职责范本
2014/01/05 职场文书
教师现实表现材料
2014/02/14 职场文书
党员理论学习心得体会
2016/01/21 职场文书
导游词之神仙居景区
2019/11/15 职场文书
Java使用httpRequest+Jsoup爬取红蓝球号码
2021/07/02 Java/Android