我正在尝试从.csv文件的两列导入数据(time hh:mm,float)。我在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()
运行程序,结果如下:
在这之后,我得到了错误代码:并不是所有的参数都被再次使用
当我使用execute()
操作符尝试相同的操作时,不会显示错误,但数据不会插入到数据库的表中
在这里您可以看到输入数据:
executemany
接受一条语句和一系列参数。试试这个:
相关问题 更多 >
编程相关推荐