使用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工程师面试题 与Python Web相关
Jan 14 Python
深入理解Python中装饰器的用法
Jun 28 Python
Python2实现的LED大数字显示效果示例
Sep 04 Python
浅谈numpy数组的几种排序方式
Dec 15 Python
Python实现求数列和的方法示例
Jan 12 Python
python-str,list,set间的转换实例
Jun 27 Python
5款Python程序员高频使用开发工具推荐
Apr 10 Python
python识别图像并提取文字的实现方法
Jun 28 Python
python logging通过json文件配置的步骤
Apr 27 Python
使用Keras构造简单的CNN网络实例
Jun 29 Python
Python约瑟夫生者死者小游戏实例讲解
Jan 04 Python
Python 可迭代对象 iterable的具体使用
Aug 07 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
德生PL550的电路分析
2021/03/02 无线电
使用PHP模拟HTTP认证
2006/10/09 PHP
php不用正则验证真假身份证
2013/11/06 PHP
浅谈PHP中的面向对象OOP中的魔术方法
2017/06/12 PHP
Yii框架视图、视图布局、视图数据块操作示例
2019/10/14 PHP
js获取IFRAME当前的URL的方法
2013/11/13 Javascript
JS 去除Array中的null值示例代码
2013/11/20 Javascript
javascript:window.open弹出窗口的位置问题
2014/03/18 Javascript
网页广告中JS代码的信息监听示例
2014/04/02 Javascript
Nodejs学习item【入门手上】
2016/05/05 NodeJs
jquery通过name属性取值的简单实现方法
2016/06/20 Javascript
完美实现js选项卡切换效果(一)
2017/03/08 Javascript
xmlplus组件设计系列之文本框(TextBox)(3)
2017/05/03 Javascript
详解用node-images 打造简易图片服务器
2017/05/08 Javascript
vue里面v-bind和Props 利用props绑定动态数据的方法
2018/08/27 Javascript
vue-cli+axios实现文件上传下载功能(下载接收后台返回文件流)
2019/05/10 Javascript
RxJS的入门指引和初步应用
2019/06/15 Javascript
基于Node的Axure文件在线预览的实现代码
2019/08/28 Javascript
在Vue中使用Viser说明(基于AntV-G2可视化引擎)
2020/10/28 Javascript
[06:44]2018DOTA2亚洲邀请赛4.5 SOLO赛 MidOne vs Sumail
2018/04/06 DOTA
[01:46]新英雄登场
2019/09/10 DOTA
Python中Iterator迭代器的使用杂谈
2016/06/20 Python
python实现连连看辅助(图像识别)
2020/03/25 Python
pyqt5、qtdesigner安装和环境设置教程
2019/09/25 Python
python对XML文件的操作实现代码
2020/03/27 Python
python语言time库和datetime库基本使用详解
2020/12/25 Python
浅谈HTML5 服务器推送事件(Server-sent Events)
2017/08/01 HTML / CSS
 Alo Yoga官网:购买瑜伽服装
2018/06/17 全球购物
师生聚会感言
2014/01/26 职场文书
中专生自我鉴定范文
2014/02/02 职场文书
超市国庆节促销方案
2014/02/20 职场文书
经济国贸专业求职信
2014/06/18 职场文书
护理工作心得体会
2016/01/22 职场文书
某学校的2019年度工作报告范本
2019/10/11 职场文书
PYTHON基于Pyecharts绘制常见的直角坐标系图表
2022/04/28 Python
Nginx的gzip相关介绍
2022/05/11 Servers