有人知道如何使用 create_view 函数使用 alembic 升级函数创建视图吗?例如,我们有:
CREATE VIEW myview AS
SELECT column_name(s)
FROM table_name
WHERE condition
现在我们要在 alembic 升级函数脚本中定义一个视图来创建“myview”。如何意识到这一点?
谢谢。
有人知道如何使用 create_view 函数使用 alembic 升级函数创建视图吗?例如,我们有:
CREATE VIEW myview AS
SELECT column_name(s)
FROM table_name
WHERE condition
现在我们要在 alembic 升级函数脚本中定义一个视图来创建“myview”。如何意识到这一点?
谢谢。
我知道,这个问题太老了,当时可能不存在这种可能性。但是,对于现在提出这个问题的所有人来说:食谱中现在描述了一种可能性。
op.create_view
它通过为您提供额外的操作(如、op.drop_view
或)利用创建、删除和替换对象(如视图和存储过程) op.replace_view(myview, replaces="3f2ab897a.myview")
。存储过程也是如此,也可以扩展为例如用户定义的函数。
视图定义如下:
myview = ReplaceableObject('myview',
"""
SELECT * FROM mytable
"""
)
当然,所有这些也可以通过简单的op.execute
语句来完成,但是在这种情况下,alembic 会处理DROP VIEW
,CREATE VIEW
和ALTER VIEW
命令。