首页 > 解决方案 > python“格式字符串的参数不足”

问题描述

我正在尝试将多行从数据框插入到 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()

我在这里错过了什么吗?

标签: pythonmysqldjangodatabase

解决方案


推荐阅读