Updated on 2025-03-13 GMT+08:00

Prompt Message Function

  • report_application_error()

    Description: This function can be used to throw errors during PL execution.

    Return type: void

    Table 1 Parameters for report_application_error

    Parameter

    Type

    Description

    Required

    log

    text

    Content of an error message.

    Yes

    code

    int4

    Error code corresponding to an error message. The value ranges from –20999 to –20000.

    No

    Example:

    gaussdb=# CREATE OR REPLACE FUNCTION GET_RESULT_UNKNOWN(
    gaussdb(#     IN context_id int, /*context_id*/
    gaussdb(#     IN col_type text /*col_type*/
    gaussdb(# )RETURNS INTEGER
    gaussdb-# AS $$
    gaussdb$# BEGIN
    gaussdb$#     if col_type is NULL then
    gaussdb$#         PG_CATALOG.REPORT_APPLICATION_ERROR('invalid input for the third parameter col_type should not be null');
    gaussdb$#     end if;
    gaussdb$#     PG_CATALOG.REPORT_APPLICATION_ERROR('UnSupport data type for column_value(context: '||context_id||', '||PG_CATALOG.QUOTE_LITERAL(col_type)||')');
    gaussdb$#     return -1;
    gaussdb$# END;
    gaussdb$# $$ LANGUAGE plpgsql;
    CREATE FUNCTION
    gaussdb=# CALL GET_RESULT_UNKNOWN(NULL, NULL);
    ERROR:  invalid input for the third parameter col_type should not be null
    CONTEXT:  SQL statement "CALL pg_catalog.report_application_error('invalid input for the third parameter col_type should not be null')"
    PL/pgSQL function get_result_unknown(integer,text) line 4 at PERFORM