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之从格式化表达式到方法
Sep 28 Python
Python2.x和3.x下maketrans与translate函数使用上的不同
Apr 13 Python
Python中的Descriptor描述符学习教程
Jun 02 Python
深入了解Python数据类型之列表
Jun 24 Python
python实现远程通过网络邮件控制计算机重启或关机
Feb 22 Python
使用Python做定时任务及时了解互联网动态
May 15 Python
Python求两点之间的直线距离(2种实现方法)
Jul 07 Python
python3实现用turtle模块画一棵随机樱花树
Nov 21 Python
Python3 获取文件属性的方式(时间、大小等)
Mar 12 Python
Python使用xpath实现图片爬取
Sep 16 Python
Python绘制分类图的方法
Apr 20 Python
golang特有程序结构入门教程
Jun 02 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
PHP 读取文件内容代码(txt,js等)
2009/12/06 PHP
php使用反射插入对象示例分享
2014/03/11 PHP
神盾加密解密教程(二)PHP 神盾解密
2014/06/08 PHP
JavaScript 克隆数组最简单的方法
2009/02/12 Javascript
JS基础之undefined与null的区别分析
2011/08/08 Javascript
jQuery弹出(alert)select选择的值
2013/04/21 Javascript
jquery中的过滤操作详细解析
2013/12/02 Javascript
AngularJS入门教程之REST和定制服务详解
2016/08/19 Javascript
BootStrap Tooltip插件源码解析
2016/12/27 Javascript
jQuery Form表单取值的方法
2017/01/11 Javascript
JS原型与原型链的深入理解
2017/02/15 Javascript
jquery中关于bind()方法的使用技巧分享
2017/03/30 jQuery
解决canvas画布使用fillRect()时高度出现双倍效果的问题
2017/08/03 Javascript
jquery动态赋值id与动态取id方法示例
2017/08/21 jQuery
vue通过滚动行为实现从列表到详情,返回列表原位置的方法
2018/08/31 Javascript
Angular脚手架开发的实现步骤
2019/04/09 Javascript
jquery实现Ajax请求的几种常见方式总结
2019/05/28 jQuery
jQuery Datatables 动态列+跨列合并实现代码
2020/01/30 jQuery
vue引入静态js文件的方法
2020/06/20 Javascript
Python实现抓取网页并且解析的实例
2014/09/20 Python
Python中关于使用模块的基础知识
2015/05/24 Python
在Python程序员面试中被问的最多的10道题
2017/12/05 Python
python 矢量数据转栅格数据代码实例
2019/09/30 Python
一些Unix笔试题和面试题
2013/01/22 面试题
网上常见的一份Linux面试题(多项选择部分)
2014/09/09 面试题
党员个人思想汇报
2013/12/28 职场文书
学习“七一”讲话精神体会
2014/07/08 职场文书
小学教师师德师风个人整改措施
2014/09/18 职场文书
解除施工合同协议书
2014/10/17 职场文书
大一新生检讨书
2014/10/29 职场文书
党的群众路线教育实践活动个人对照检查材料(校长)
2014/11/05 职场文书
2014年教师业务工作总结
2014/12/19 职场文书
晚会主持人开场白台词
2015/05/28 职场文书
2016大一新生军训感言
2015/12/08 职场文书
参观监狱警示教育心得体会
2016/01/15 职场文书
python 开心网和豆瓣日记爬取的小爬虫
2021/05/29 Python