Python之csv文件从MySQL数据库导入导出的方法


Posted in Python onJune 21, 2018

Python从MySQL数据库中导出csv文件处理

csv文件导入MySQL数据库

import pymysql
import csv
import codecs
def get_conn():
  conn = pymysql.connect(host='localhost', port=3306, user='root', passwd='root', db='test_csv', charset='utf8')
  return conn
def insert(cur, sql, args):
  cur.execute(sql, args)
def read_csv_to_mysql(filename):
  with codecs.open(filename=filename, mode='r', encoding='utf-8') as f:
    reader = csv.reader(f)
    head = next(reader)
    conn = get_conn()
    cur = conn.cursor()
    sql = 'insert into tb_csv values(%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)'
    for item in reader:
      if item[1] is None or item[1] == '': # item[1]作为唯一键,不能为null
        continue
      args = tuple(item)
      print(args)
      insert(cur, sql=sql, args=args)
    conn.commit()
    cur.close()
    conn.close()
if __name__ == '__main__':
  read_csv_to_mysql('1.csv')

注:

1.csv文件的表头如:

序号,合同编号,义务人,档案柜号,柜内编号,权利人,放款金额,放款日期,他项权利证编号,抵押物地址,结清出库日期,备注,地区

mysql的创建tb_csv表语句

CREATE TABLE tb_csv(
  xuhao VARCHAR(20),
  htcode VARCHAR(20),
  yiwuren VARCHAR(20),
  dagh VARCHAR(20),
  gncode VARCHAR(20),
  quanliren VARCHAR(20),
  fkmoney VARCHAR(20),
  fkdata VARCHAR(20),
  qitacode VARCHAR(20),
  diyaaddr VARCHAR(100),
  jqdata VARCHAR(30),
  beizhu VARCHAR(30),
  zone  VARCHAR(30),
  PRIMARY KEY(htcode)
)CHARSET=utf8;

这里为了省事,表中的字段都指明varchar类型

MySQL数据库写入csv文件

import pymysql
import csv
import codecs
def get_conn():
  conn = pymysql.connect(host='localhost', port=3306, user='root', passwd='root', db='test_csv', charset='utf8')
  return conn
def query_all(cur, sql, args):
  cur.execute(sql, args)
  return cur.fetchall()
def read_mysql_to_csv(filename):
  with codecs.open(filename=filename, mode='w', encoding='utf-8') as f:
    write = csv.writer(f, dialect='excel')
    conn = get_conn()
    cur = conn.cursor()
    sql = 'select * from tb_csv'
    results = query_all(cur=cur, sql=sql, args=None)
    for result in results:
      print(result)
      write.writerow(result)
if __name__ == '__main__':
  read_mysql_to_csv('2.csv')

以上这篇Python之csv文件从MySQL数据库导入导出的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python完成FizzBuzzWhizz问题(拉勾网面试题)示例
May 05 Python
python使用Pycharm创建一个Django项目
Mar 05 Python
如何在django里上传csv文件并进行入库处理的方法
Jan 02 Python
python 实现图片旋转 上下左右 180度旋转的示例
Jan 24 Python
详解10个可以快速用Python进行数据分析的小技巧
Jun 24 Python
python搜索包的路径的实现方法
Jul 19 Python
Django如何使用第三方服务发送电子邮件
Aug 14 Python
基于python监控程序是否关闭
Jan 14 Python
python函数中将变量名转换成字符串实例
May 11 Python
python使用nibabel和sitk读取保存nii.gz文件实例
Jul 01 Python
Python办公自动化之Excel(中)
May 24 Python
Python 绘制多因子柱状图
May 11 Python
python 从csv读数据到mysql的实例
Jun 21 #Python
OPENCV去除小连通区域,去除孔洞的实例讲解
Jun 21 #Python
python读取文本绘制动态速度曲线
Jun 21 #Python
python实现可视化动态CPU性能监控
Jun 21 #Python
python实时监控cpu小工具
Jun 21 #Python
python实现监控某个服务 服务崩溃即发送邮件报告
Jun 21 #Python
python实现简易内存监控
Jun 21 #Python
You might like
日本十大科幻动漫 宇宙骑士垫底,第一已成经典
2020/03/04 日漫
PHP 正则表达式之正则处理函数小结(preg_match,preg_match_all,preg_replace,preg_split)
2012/10/05 PHP
Dwz与thinkphp整合下的数据导出到Excel实例
2014/12/04 PHP
php微信开发之关键词回复功能
2018/06/13 PHP
JS保留小数点(四舍五入、四舍六入)实现思路及实例
2013/04/25 Javascript
javascript实现2048游戏示例
2014/05/04 Javascript
JQuery插件ajaxfileupload.js异步上传文件实例
2015/05/19 Javascript
jQuery判断一个元素是否可见的方法
2015/06/05 Javascript
javascript中checkbox使用方法简单实例演示
2015/11/17 Javascript
js插件Jcrop自定义截取图片功能
2016/10/14 Javascript
JS中IP地址与整数相互转换的实现代码
2017/04/10 Javascript
详解AngularJS2 Http服务
2017/06/26 Javascript
JS对象与JSON互转换、New Function()、 forEach()、DOM事件流等js开发基础小结
2017/08/10 Javascript
微信小程序云开发实现云数据库读写权限
2019/05/17 Javascript
全面分析JavaScript 继承
2019/05/30 Javascript
生产制造追溯系统之在线打印功能
2019/06/03 Javascript
更优雅的微信小程序骨架屏实现详解
2019/08/07 Javascript
layui的select联动实现代码
2019/09/28 Javascript
JS实现分页导航效果
2020/02/19 Javascript
Python中的闭包总结
2014/09/18 Python
python机器学习理论与实战(一)K近邻法
2021/01/28 Python
对numpy中轴与维度的理解
2018/04/18 Python
python 实现读取csv数据,分类求和 再写进 csv
2020/05/18 Python
python Cartopy的基础使用详解
2020/11/01 Python
CSS3正方体旋转示例代码
2013/08/08 HTML / CSS
Expedia韩国官网:亚洲发展最快的在线旅游门户网站
2018/02/26 全球购物
Baracuta官方网站:Harrington夹克,G9,G4,G10等
2018/03/06 全球购物
Ellesse英国官网:意大利高级运动品牌
2019/07/23 全球购物
Genny意大利官网:意大利高级时装品牌
2020/04/15 全球购物
新电JAVA笔试题目
2014/08/31 面试题
儿科主治医生个人求职信
2013/09/23 职场文书
新年晚会主持词
2014/03/24 职场文书
岗位竞聘书范文
2014/03/31 职场文书
关于梦想的演讲稿
2014/05/05 职场文书
迎国庆主题班会
2015/08/17 职场文书
Springboot配置suffix指定mvc视图的后缀方法
2021/07/03 Java/Android