Python парсинг в базу данных

У меня есть код на фрейме Sanic:

 @app.route('/client', methods=["POST", "OPTIONS"])
async def create_client(request):
    conn = psycopg2.connect(user='postgres', password='baldauren15', database='pyDB', host='127.0.0.1', port=5432)
    cursor = conn.cursor()
    if request.method == "POST":
        client = request.json.get('name')
        clients.append(client)
        insert_cl = sql.SQL('INSERT into clients(client_name) values ({})').format(
            sql.SQL(',').join(map(sql.Literal, clients)))
        cursor.execute(insert_cl)
        conn.commit()
        return response.json({"Name": client, "status": "saved"})
    else:
        return response.json({})

Здесь с помощью POST осуществляется INSERT в базу и оно более чем работает, но это когда я делаю POST запрос первый раз, а когда хочу сделать еще раз за один запуск у меня две данные вписываются в одну sql и производит такую ошибку:

psycopg2.errors.SyntaxError: ОШИБКА:  INSERT contains more expressions than target columns
LINE 1: ...SERT into clients(client_name) values ('Allan','Kane'...

Я думал чтоб сюда перед INSERT устроить цикл чтоб он работал циклично но что то пошло не так и ошибок стало еще больше. Подскажите как менять логику кода или все же можно через цикл, если да то как)


Ответы (0 шт):