CSV到MySQL上传问题

2024-05-08 19:01:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经修改了this code(贴在下面以保存点击)来为我工作。我有两个问题。你知道吗

1)如何让上传者跳过标题行?现在它将上传我的CSV的第一行,它只是定义了列。因此,在本例中,进入我的数据库的条目将是“名字、姓氏、电子邮件”。你知道吗

2)2列显示“First Name”“Last Name”,很明显空格会把它搞砸,抛出一个错误,说我的SQL语法有问题,并检查手册中的版本。我自己玩了一下后发现,如果我用一个∗来代替这个空间,它就会起作用。所以新列是“名字”和“姓氏”。有没有一种方法既不获取错误,又不使用下划线?你知道吗

import csv
import MySQLdb

mydb = MySQLdb.connect(host='server IP',
    user='DB User Name',
    passwd='PW for DB user',
    db='name of DB')
cursor = mydb.cursor()

csv_data = csv.reader(file('test.csv'))
for row in csv_data:

    cursor.execute('INSERT INTO testcsv(First_Name, \
          Last_Name,email )' \
          'VALUES("%s","%s","%s")', 
          row)
#close the connection to the database.
mydb.commit()
cursor.close()
print "Done"

Tags: csvnameimportfordbdata错误名字

热门问题