我正在编写一个 python 脚本来使用 SQLAlchemy 创建 postgres 数据库。我也想以同样的方式创建存储过程。我检查了 SQL Alchemy 文档,但无法找到是否可以使用它创建存储过程。有可能这样做吗?任何教程/示例都会有所帮助。我找到了一些有关如何使用 SQLAlchemy 调用 SP 的示例,但没有找到有关如何创建的示例。
提前致谢。 塔拉·辛格
最佳答案
您可以使用sqlalchemy.sql.expression.text 创建存储过程
(实际上,执行任何有效的SQL 语句
)构造:
t = text("SELECT * FROM users WHERE id=:user_id")
result = connection.execute(t, user_id=12)
但这更像是 SQLAlchemy 的一个附录,而不是设计的用法。
此外,这不能以独立于 DMBS 的方式完成,这是使用 SQLAlchemy 等 ORM
工具的好处之一。
如果您的目标是对数据库模式进行版本控制,您仍然可以使用它,但您需要完全控制此过程并处理诸如存储过程
、UDF
之间的依赖关系之类的事情>、 View
并按正确的顺序创建/删除它们。
关于postgresql - 使用 SQLAlchemy 创建存储过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3339917/