暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

如何在金仓数据库KingbaseES中使用pg_get_function_arg_default函数

数据猿 2022-03-04
367


关键字

pg_get_function_arg_default,regproc

问题描述

如何在金仓数据库KingbaseES中使用pg_get_function_arg_default函数获取函数或者存储过程中相应位置的参数?

解决方案

    1)获得函数数据类型:oid、integer

    2)将创建对象转换为oid模式

    3)select pg_get_function_arg_default('pr1'::regproc,1);

    执行结果:   pg语法(oracle语法同)

 test=# \set SQLTERM /
    test=# CREATE OR REPLACE PROCEDURE pr1(a1 int :=10,a2 varchar(50) :='beijing') AS $$
    test$# BEGIN
    test$# INSERT INTO t1 VALUES(1,'kingbase');
    test$# INSERT INTO t1 VALUES(a1,a2);
    test$# END;
    test$# $$
    test-# LANGUAGE PLPGSQL;
    test-# /
    CREATE PROCEDURE
    test=# select pg_get_function_arg_default('pr1'::regproc,1);
    test-# /
    pg_get_function_arg_default
    -----------------------------
    10
    (1 row)

    test=# \df pg_get_function_arg_default

    List of functions
    Schema      | Name                                         | Result data type | Argument data types | Type
    ----------------+-------------------------------------------+-------------------------+--------------------------------+------
    pg_catalog | pg_get_function_arg_default | text                        | oid, integer                  | func

    'object_name'::regproc   将创建对象转化为oid形式   

     integer   填写具体数字 对应参数的位置

    pg_get_function_arg_default   函数是获取对应位置参数的默认值


「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论