使用sqlalchemy创建视图和具体化视图
sqlalchemy-plus的Python项目详细描述
SQL炼金术升级版
这个包为sqlalchemy提供了额外的包定义 专门针对PostgreSQL和其他数据库的。
以下是当前支持的功能(支持数据库):
- 视图(PostgreSQL)
- 物化视图(PostgreSQL)
安装
使用pip安装SQL Alchemy Plus
pip install sqlalchemyplus
快速启动
以编程方式定义视图或物化视图
from sqlalchemy import Table, select, Column, MetaData, Integer, String
from sqlalchemyplus import View
metadata = MetaData()
table = Table('mytable',
metadata,
Column('key', Integer),
Column('value', String))
select_table = table.select()
view = View(
'myview',
metadata,
select_table
)
创建并删除视图
from sqlalchemy import create_engine
from sqlalchemyplus import CreateView, DropView
engine = create_engine("postgresql://example:example@localhost:5432/mydatabase")
view = View(
'myview',
metadata,
select_table
)
# Execute 'CREATE VIEW myview AS (...)'
engine.execute(CreateView(view))
# Execute 'DROP VIEW myview'
engine.execute(CreateView(view))