Я ищу простой способ вставить несколько строк, используя необработанный запрос с sqlalchemy.
Я пытаюсь выполнить такой запрос, в котором количество строк может быть изменено:
INSERT INTO table (
col_1,
col_2
)
VALUES (row_1_col_1, row_1_col_2), (row_2_col_1, row_2_col_2),
(row_3_col_1, row_3_col_2);
И мне интересно, есть ли способ использовать список dict как параметр запроса:
from sqlalchemy.sql import text
insert_query = text("""
INSERT INTO table (
col_1,
col_2
) VALUES :to_insert
""")
params = {'to_insert': [
{'col_1': 'row_1_col_1', 'col_2': 'row_1_col_2'},
{'col_1': 'row_2_col_1', 'col_2': 'row_2_col_2'},
{'col_1': 'row_3_col_1', 'col_2': 'row_3_col_2'}]
result = connection.execute(query, params)
вместо создания строки с использованием ','. Join.