python «недостаточно аргументов для строки формата» - PullRequest
1 голос
/ 27 мая 2020

Я пытаюсь вставить несколько строк из фрейма данных в 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()

Я что-то упустил?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...