2016-07-22 76 views
0

在我的用例中,我有一個csv存儲爲字符串,我想將它加載到MySQL表中。有沒有比將文件保存爲文件,使用LOAD DATA INFILE,然後刪除文件更好的方法?我發現this answer,但它是爲JDBC,我沒有找到一個相當於它的Python。如何使用Python將CSV字符串加載到MySQL中

+1

爲什麼不只是把一個插入stmt放在一起? – Drew

回答

0

是的,你描述的是非常可能的!舉例來說,你的csv文件有三列:

import MySQLdb 
conn = MySQLdb.connect('your_connection_string') 
cur = conn.cursor() 
with open('yourfile.csv','rb') as fin: 
    for row in fin: 
     cur.execute('insert into yourtable (col1,col2,col3) values (%s,%s,%s)',row) 
cur.close(); conn.close() 
+0

如果我的csv中有很多行,這會慢嗎?我聽說LOAD DATA INFILE在加載大量數據時效率更高。 – user274602

+0

您應該嘗試兩種方法... – bernie