Как автоматизировать скрипт вставки базы данных? - PullRequest
0 голосов
/ 22 мая 2019

Я использую Python и PostgreSQL (psycopg2) для создания базы данных.Я вставляю значения в БД, используя cursor, как показано в следующем примере кода:

cursor.execute(
       sql.SQL(
           """
           INSERT INTO table_A 
           VALUES (%s, %s, %s, %s)
           """
        ),
        [
           'a', 'b', 'c', 'd'
        ]
    )

В каждой таблице есть функция, которая запускает аналогичный код для вставки значений.Чтобы избежать избыточности, я хотел бы реализовать функцию, которая могла бы обобщать вставку для любой таблицы, в частности форматирование значений (например, VALUES (%s, %s, %s, %s)).

def foo(table_name, array_of_values):
     cursor.execute(
            sql.SQL(
                """
                INSERT INTO %s 
                VALUES (%s * len(array_of_values)) # Obviously this doesn't work, it's just an attempt to explain my caveat at this point.
                """
            ),
            [table_name] + array_of_values
        )

Есть ли способ, которым я могу достичьэто?

...