【问题标题】:How to get all the procedure name and definition in a given schema in Redshift?如何在 Redshift 中获取给定模式中的所有过程名称和定义?
【发布时间】:2020-03-30 12:56:19
【问题描述】:

使用 Redshift 时,我想获取在模式中创建的所有过程的名称及其定义。

我知道您可以使用 SHOW PROCEDURE 命令来获取定义,但这需要具有过程名称。

在 SVV_TABLE 中只有关于表和视图的信息,但没有过程。

如果有人知道如何获得它?

【问题讨论】:

    标签: python-3.x amazon-redshift


    【解决方案1】:

    Redshift 还没有系统视图,但您可以使用 PG_PROC 表并将其与 pg_namespace 连接以过滤模式名称。

        select proname, proargnames, prosrc
        from PG_PROC
        join pg_namespace on pg_namespace.oid = pg_proc.pronamespace
        where nspname = 'your_schema_name' and procsecdef = true;
    

    procsecdef = true 仅用于获取存储过程定义,否则您还将获取 python UDF。

    【讨论】:

      猜你喜欢
      • 2020-10-02
      • 1970-01-01
      • 1970-01-01
      • 2011-10-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多