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制作爬虫采集小说
Oct 25 Python
python flask实现分页的示例代码
Aug 02 Python
Python3实现从排序数组中删除重复项算法分析
Apr 03 Python
使用PyQt4 设置TextEdit背景的方法
Jun 14 Python
使用Python实现跳一跳自动跳跃功能
Jul 10 Python
详解使用PyInstaller将Pygame库编写的小游戏程序打包为exe文件
Aug 23 Python
pandas 对group进行聚合的例子
Dec 27 Python
python异常处理try except过程解析
Feb 03 Python
Python类如何定义私有变量
Feb 03 Python
python matplotlib包图像配色方案分享
Mar 14 Python
如何解决flask修改静态资源后缓存文件不能及时更改问题
Aug 02 Python
使用pandas实现筛选出指定列值所对应的行
Dec 13 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
实现“上一页”和“下一页按钮
2006/10/09 PHP
用php+mysql一个名片库程序
2006/10/09 PHP
PHP 读取Postgresql中的数组
2013/04/14 PHP
如何使用PHP实现javascript的escape和unescape函数
2013/06/29 PHP
javascript实现 在光标处插入指定内容
2007/05/25 Javascript
070823更新的一个[消息提示框]组件 兼容ie7
2007/08/29 Javascript
js实现双向链表互联网机顶盒实战应用实现
2011/10/28 Javascript
javascript实现多级联动下拉菜单的方法
2015/02/06 Javascript
浅谈JavaScript事件的属性列表
2015/03/01 Javascript
javascript实现的全国省市县无刷新多级关联菜单效果代码
2016/08/01 Javascript
JS实现按钮添加背景音乐示例代码
2017/10/17 Javascript
React Native之prop-types进行属性确认详解
2017/12/19 Javascript
react以create-react-app为基础创建项目
2018/03/14 Javascript
浅谈关于JS下大批量异步任务按顺序执行解决方案一点思考
2019/01/08 Javascript
微信小程序常用赋值方法小结
2019/04/30 Javascript
17个Python小技巧分享
2015/01/23 Python
python制作花瓣网美女图片爬虫
2015/10/28 Python
python实现发送和获取手机短信验证码
2016/01/15 Python
利用Python实现kNN算法的代码
2019/08/16 Python
python elasticsearch环境搭建详解
2019/09/02 Python
python+requests接口自动化框架的实现
2020/08/31 Python
CSS3中新增的对文本和字体的设置
2020/02/03 HTML / CSS
Ibatis的核心配置文件都有什么
2014/09/08 面试题
几道数据库的面试题或笔试题
2014/05/31 面试题
超市业务员岗位职责
2013/12/05 职场文书
戒毒悔改检讨书
2014/09/21 职场文书
带香烟到学校抽的检讨书
2014/09/25 职场文书
2014年售后服务工作总结
2014/11/18 职场文书
小学四年级学生评语
2014/12/26 职场文书
内乡县衙导游词
2015/02/05 职场文书
杭白菊导游词
2015/02/10 职场文书
捐款通知怎么写
2015/04/24 职场文书
暑期家教宣传单
2015/07/14 职场文书
纪检干部学习心得体会
2016/01/23 职场文书
linux下导入、导出mysql数据库命令的实现方法
2021/05/26 MySQL
Python中第三方库Faker的使用详解
2022/04/02 Python