2010-07-27 14 views
6

Sto scrivendo uno script python per creare il database postgres utilizzando SQLAlchemy. Voglio anche creare stored procedure nello stesso modo. Ho controllato le Documentazioni SQL Alchemy ma non sono riuscito a scoprire se posso creare stored procedure usandolo o meno. È possibile farlo? eventuali tutorial/esempi aiuterebbero. Ho trovato alcuni esempi su come chiamare SP usando SQLAlchemy ma non su come creare.Creazione di stored procedure con SQLAlchemy

Grazie in anticipo. Tara Singh

+0

La maggior parte degli strumenti ORM fornisce meccanismi per l'utilizzo di stored proc, ma non li crea, poiché la lingua per la creazione di stored procedure tende ad essere strettamente legata al database in questione. – ig0774

risposta

7

è possibile creare stored procedures (in realtà, eseguire qualsiasi valida SQL statement) utilizzando sqlalchemy.sql.expression.text costrutto:

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

Ma questo sarà più di un appendice al SQLAlchemy, piuttosto che l'uso progettato.
Anche questo non può essere fatto in un modo indipendente da DMBS, che è uno dei vantaggi che utilizzano gli strumenti ORM come SQLAlchemy.
Se il tuo obiettivo è controllare la versione del tuo schema di database, puoi comunque usarlo, ma devi prendere il controllo completo di questo processo e gestire cose come le dipendenze tra stored procedures, UDFs, views e creare/rilasciarli nell'ordine corretto.

Problemi correlati