ОБНОВЛЕНИЕ
Я знаю, что об этом уже спрашивали несколько раз, но я не могу решить свою проблему (абсолютный новичок).
Я пытаюсь импортировать данные из двух столбцов файла .csv (время чч: мм, с плавающей точкой). Я создал базу данных и таблицу в mysql.
import mysql.connector
import csv
mydb = mysql.connector.connect(host='127.0.0.1',
user= 'xxx',
passwd='xxx',
db='pv_datenbank')
cursor = mydb.cursor()
# get rid of the '' at the beginning of the .csv file
s = open('Sonneneinstrahlung.csv', mode='r', encoding='utf-8-sig').read()
open('Sonneneinstrahlung.csv', mode='w', encoding='utf-8').write(s)
print(s)
with open('Sonneneinstrahlung.csv') as csv_file:
csv_reader = csv.reader(csv_file, delimiter=';')
sql = """INSERT INTO einstrahlung ('Uhrzeit', 'Einstrahlungsdaten') VALUES (%s, %s)"""
for row in csv_reader:
print(row)
print(cursor.rowcount, "was inserted.")
cursor.executemany(sql, csv_reader)
#cursor.execute(sql, row, multi=True)
mydb.commit()
mydb.close()
Если я запускаю программу с executemany (), результатом будет следующее
- ['01:00' , '1']
- '- 1 был вставлен.'
и после этого я получаю код ошибки: Не все параметры использовались снова.
Когда я пытаюсь сделать то же самое с оператором execute (), ошибка не отображается, но данные не вставляются в таблицу моей базы данных.
Как я уже сказал, я искал подходящее решение, но мне нужна ваша помощь для этой конкретной задачи c. Заранее спасибо!
Здесь вы можете увидеть входные данные: входные данные