使用python读取csv文件快速插入数据库的实例


Posted in Python onJune 21, 2018

如下所示:

# -*- coding:utf-8 -*-
# auth:ckf
# date:20170703
import pandas as pd
import cStringIO
import warnings
from sqlalchemy import create_engine
import sys

reload(sys)
sys.setdefaultencoding('utf8')
warnings.filterwarnings('ignore')

engine = create_engine(
 'postgresql+psycopg2://'数据库连接)

filename = sys.argv[1]
tablename = sys.argv[2]
print '=== csvname is',filename ,'tablename is',tablename,'==='

print 'read', filename, '...'
df = pd.read_csv(filename, sep=';')
print 'read', filename, 'done!'

print 'lets insert ...'
output = cStringIO.StringIO()
# ignore the index
df.to_csv(output, sep='\t',index = False, header = False)
output.getvalue()
# jump to start of stream
output.seek(0)

connection = engine.raw_connection()
cursor = connection.cursor()
# null value become ''
cursor.copy_from(output,tablename,null='')
connection.commit()
cursor.close()
print 'done!'

这个脚本可以直接运行,将csv文件放在同级目录即可。

csv第一列需要有列名,如果csv里没有列名,需要在代码中添加列名。

代码运行示例:python insert.py csvname tablename

以上这篇使用python读取csv文件快速插入数据库的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
介绍Python中的一些高级编程技巧
Apr 02 Python
Python使用wxPython实现计算器
Jan 30 Python
Python numpy 提取矩阵的某一行或某一列的实例
Apr 03 Python
python网络爬虫学习笔记(1)
Apr 09 Python
python pandas 对时间序列文件处理的实例
Jun 22 Python
Python产生Gnuplot绘图数据的方法
Nov 09 Python
利用python将图片版PDF转文字版PDF
May 03 Python
使用OpenCV实现仿射变换—平移功能
Aug 29 Python
Python 中判断列表是否为空的方法
Nov 24 Python
python 遍历pd.Series的index和value
Nov 26 Python
pip 20.3 新版本发布!即将抛弃 Python 2.x(推荐)
Dec 16 Python
Python异常类型以及处理方法汇总
Jun 05 Python
详解python3中tkinter知识点
Jun 21 #Python
Python3用tkinter和PIL实现看图工具
Jun 21 #Python
Python3.4 tkinter,PIL图片转换
Jun 21 #Python
Python3实现转换Image图片格式
Jun 21 #Python
python3实现域名查询和whois查询功能
Jun 21 #Python
解决python写入mysql中datetime类型遇到的问题
Jun 21 #Python
详解Python下ftp上传文件linux服务器
Jun 21 #Python
You might like
PHP文件读写操作之文件读取方法详解
2011/01/13 PHP
php 随机排序广告的实现代码
2011/05/09 PHP
php实现URL加密解密的方法
2016/11/17 PHP
php中的钩子理解及应用实例分析
2019/08/30 PHP
Javascript入门学习资料收集整理篇
2008/07/06 Javascript
Javascript下IE与Firefox下的差异兼容写法总结
2010/06/18 Javascript
无阻塞加载脚本分析[全]
2011/01/20 Javascript
JQuery datepicker 使用方法
2011/05/20 Javascript
Javascript new Date().valueOf()的作用与时间戳由来详解
2013/04/24 Javascript
jquery及原生js获取select下拉框选中的值示例
2013/10/25 Javascript
Javascript模块化编程详解
2014/12/01 Javascript
关于网页中的无缝滚动的js代码
2016/06/09 Javascript
jQuery实现侧浮窗与中浮窗切换效果的方法
2016/09/05 Javascript
移动端js触摸事件详解
2016/09/18 Javascript
jQuery插件ajaxFileUpload使用详解
2017/01/10 Javascript
discuz表情的JS提取方法分析
2017/03/22 Javascript
JS+canvas绘制的动态机械表动画效果
2017/09/12 Javascript
jquery实现左右轮播图效果
2017/09/28 jQuery
Vue组件和Route的生命周期实例详解
2018/02/10 Javascript
[01:56]2014DOTA2西雅图邀请赛 MVP外卡赛老队长精辟点评
2014/07/09 DOTA
Python多层嵌套list的递归处理方法(推荐)
2016/06/08 Python
火车票抢票python代码公开揭秘!
2018/03/08 Python
python相对企业语言优势在哪
2020/06/12 Python
CSS教程:CSS3圆角属性
2009/04/02 HTML / CSS
HTML5 Blob 实现文件下载功能的示例代码
2019/11/29 HTML / CSS
DJI大疆无人机官方商城:全球领先的无人飞行器研发和生产商
2016/12/21 全球购物
求职信模版
2013/11/30 职场文书
大学生作弊检讨书
2014/02/19 职场文书
白酒市场营销方案
2014/02/25 职场文书
财务主管岗位职责
2014/02/28 职场文书
父亲去世追悼词
2015/06/23 职场文书
情人节单身感言
2015/08/03 职场文书
早安问候语大全
2015/11/10 职场文书
利用js实现简单开关灯代码
2021/11/23 Javascript
关于python3 opencv 图像二值化的问题(cv2.adaptiveThreshold函数)
2022/04/04 Python
Java Spring读取和存储详细操作
2022/08/05 Java/Android