在SQLAlchemy中编写数据库功能

时间:2019-01-20 15:43:28

标签: python postgresql sqlalchemy

我在数据库中编写了一些psql函数,经常在与python应用程序不同的上下文中使用(例如,用于数据集成)。

例如,这是我编写的一个简单函数,但是我还有其他一些更复杂的函数:

    CREATE OR REPLACE FUNCTION                                 
    ref_nomenclatures.get_cd_nomenclature(myidnomenclature integer)
      RETURNS character varying AS
    $BODY$
    DECLARE thecdnomenclature character varying;
      BEGIN
    SELECT INTO thecdnomenclature cd_nomenclature
    FROM ref_nomenclatures.t_nomenclatures n
    WHERE myidnomenclature = n.id_nomenclature;
    return thecdnomenclature;
      END;
    $BODY$
    LANGUAGE plpgsql IMMUTABLE

另一方面,我有一个使用sqlalchemy的python flask应用程序。我所有的模型都用sqlachemy声明,我用create_all()函数(https://docs.sqlalchemy.org/en/latest/core/metadata.html)创建数据库。

如何使用sqlachemy编写这些函数,并使用create_all()函数将它们反映在数据库中? 我想实现这一点,以便用python编写创建/迁移脚本而无需编写任何sql脚本。

感谢您的帮助。

0 个答案:

没有答案