如下所示:
# -*- 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.ar**[1]
tablename = sys.ar**[2]程式設計客棧
print '=== csvn程式設計客棧ame 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
xlspozwruoutput.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讀取csv檔案
csv格式資料 import csvcsv資料儲存,包括三種方式 直接寫入csv檔案 寫入 一條或者多條資料 import csv header line1 line2 line3 rows 1,2,3 4,5,6 7,8,9 with open test.csv w as f file csv.w...
python讀取CSV檔案
reader讀取csv檔案,再用for迴圈遍歷 import csv with open customer.csv as f f csv csv.reader f for row in f csv print row 0 執行結果 id test 932467 1111 932468 2 93246...
python讀取csv檔案
在python裡面,讀取或寫入csv檔案時,首先要import csv這個庫,然後利用這個庫提供的方法進行對檔案的讀寫。0x01 獲取每一行 讀取csv檔案,用的是csv.reader 這個方法。返回結果是乙個 csv.reader的物件,我們可以對這個物件進行遍歷,輸出每一行,某一行,或某一列。如...