【发布时间】:2020-08-06 23:26:36
【问题描述】:
我目前正在从事一个学校项目,我正在尝试使用 python 将数据从 CSV 文件导入 MySQL。到目前为止,这是我的代码:
import mysql.connector
import csv
mydb = mysql.connector.connect(host='127.0.0.1', user='root', password='abc123!', db='jd_university')
cursor = mydb.cursor()
with open('C:/Users/xxxxxx/Downloads/Students.csv') as csvfile:
reader = csv.DictReader(csvfile, delimiter=',')
for row in reader:
cursor.execute('INSERT INTO Student (First_Name, Last_Name, DOB, Username, Password, Phone_nr,'
'Email, StreetName_nr, ZIP) '
'VALUES("%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s")',
row)
mydb.commit()
cursor.close()
当我运行它时,我得到这个错误:“mysql.connector.errors.DataError: 1292 (22007): Incorrect date value: '%s' for column 'DOB' at row 1"
CSV 文件中使用的日期格式为 yyyy-mm-dd
这方面的任何提示都会有很大帮助!
【问题讨论】:
-
你能给我们展示前三行样本数据吗?它是否包含包含列名的标题行?
-
您应该在问题中记录一些示例数据,例如
print(row)用于调试目的。完成删除后就可以了。
标签: python mysql python-3.x csv