Я пытаюсь вставить несколько строк из фрейма данных в mysql.
Я подсчитал числа аргументов, и все они имеют одинаковое число (т.е. 11 здесь).
Но все же я получаю это
not enough arguments for format string
Вот функция:
def insert_result_sets_into_db(df, filter_rule_id):
cols = "('hash_id', 'filter_rule_id', 'task_id', 'assigned_to', 'human_verdict', 'verdict_date', 'verdict_by', 'created_by', 'updated_by', 'created_at', 'updated_at')"
if not df.empty:
with connections['frontend'].cursor() as cursor:
sql = "INSERT INTO dmf_result_set_assign " + cols + " VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)"
values = []
now = datetime.now()
formatted_date = now.strftime('%Y-%m-%d %H:%M:%S')
# Insert DataFrame records one by one.
for i,row in df.iterrows():
tup = (row['_id'], filter_rule_id, 1, 1, 'Matched', formatted_date, 1, 1, 1, formatted_date, formatted_date)
values.extend(tup)
cursor.executemany(sql, values)
connections.commit()
Я что-то упустил?