sql >> データベース >  >> RDS >> PostgreSQL

plpgsqlを使用して関数内の現在の関数の名前を取得する

    Postgres 9.4以降、以下の関数は独自の名前を返します:

    CREATE OR REPLACE FUNCTION your_schema.get_curr_fx_name()
    RETURNS text AS  $$
    DECLARE
      stack text; fcesig text;
    BEGIN
      GET DIAGNOSTICS stack = PG_CONTEXT;
      fcesig := substring(stack from 'function (.*?) line');
      RETURN fcesig::regprocedure::text;
    END;
    $$ LANGUAGE plpgsql;
    


    1. 列SQLを動的に作成する

    2. 配列要素の並べ替え

    3. データベースを安全に保つための5つのヒント

    4. Java:OracleからBlobを読み取る