Создание хранимых процедур с помощью SQLAlchemy - PullRequest
6 голосов
/ 27 июля 2010

Я пишу скрипт на python для создания базы данных postgres с использованием SQLAlchemy.Я также хочу создать хранимые процедуры таким же образом.Я проверил документацию по SQL-алхимии, но не смог найти, могу ли я создать хранимую процедуру, используя ее или нет.Возможно ли это сделать?любые учебники / примеры помогут.Я нашел несколько примеров того, как вызывать SP с помощью SQLAlchemy, но не о том, как создать.

Заранее спасибо.Тара Сингх

1 Ответ

9 голосов
/ 29 июля 2010

Вы можете создать stored procedures (фактически выполнить любое действительное SQL statement), используя sqlalchemy.sql.expression.text construct:

t = text("SELECT * FROM users WHERE id=:user_id")
result = connection.execute(t, user_id=12)

Но это будет более приложения к SQLAlchemy, а не для запланированного использования.
Также это нельзя сделать независимым от DMBS способом, что является одним из преимуществ использования ORM инструментов, таких как SQLAlchemy.
ЕслиВаша цель состоит в контроле версий вашей схемы базы данных, вы все еще можете использовать ее, но вам нужно полностью контролировать этот процесс и обрабатывать такие вещи, как зависимости между stored procedures, UDFs, views и создавать / удалять их вправильный порядок.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...