Я сделал Python-скрипт, который принимает файл Excel, преобразует его в CSV-файл.Моя проблема заключается в том, что у меня есть несколько нулевых значений в моем CSV, который должен быть нулевым, но при попытке вставить его в базу данных, я получаю эту ошибку
psycopg2.DataError: invalid input syntax for type date: "None"
LINE 1: ...', 'Some info here', 'And some more', '1995-09-06', 'None'
Это код, который я написал для преобразованияExcel-файлы в CSV
def excel_to_csv():
xlsx = pd.read_excel(excel_path + fileName + '.xlsx')
xlsx.to_csv(csv_file, encoding='utf-8', index=False, na_rep=None, quoting=csv.QUOTE_NONE)
excel_to_csv()
И когда я проверяю CSV-файл, все форматируется правильно, со значениями, разделенными на, и нулевым значением является None, без кавычек.Кажется, что проблема начинается, когда я пытаюсь прочитать CSV-файл и затем вставить его в базу данных.Я использую csv.reader для этого
with open(csv_file, 'rb') as f:
reader = csv.reader(f, delimiter=',', quoting=csv.QUOTE_NONE)
next(reader)
for row in reader:
cur.execute(
"INSERT INTO databasetable (foo, foo2, foo3, foo4) VALUES (%s, %s, %s, %s);",
row
)
Кто-нибудь знает, что здесь не так?