Я вставляю список словарей в базу данных PostgreSQL.Список будет быстро расти, и число значений dict (столбцов) будет около 30. Предполагаемые данные:
projects = [
{'name': 'project alpha', 'code': 12, 'active': True},
{'name': 'project beta', 'code': 25, 'active': True},
{'name': 'project charlie', 'code': 46, 'active': False}
]
Вставка данных в базу данных PostgreSQL с помощью следующего кода работает (как в этом ответ ), но я беспокоюсь о том, чтобы выполнить слишком много запросов.
for project in projects:
columns = project.keys()
values = project.values()
query = """INSERT INTO projects (%s) VALUES %s;"""
# print(cursor.mogrify(query, (AsIs(','.join(project.keys())), tuple(project.values()))))
cursor.execute(query, (AsIs(','.join(columns)), tuple(values)))
conn.commit()
Есть ли лучшая практика?Заранее большое спасибо за помощь!