Sql 语法错误42561。错误:语法错误位于或接近&引用;

Sql 语法错误42561。错误:语法错误位于或接近&引用;,sql,postgresql,plpgsql,Sql,Postgresql,Plpgsql,我在create function语句中收到一个语法错误,无论我做什么尝试,我似乎都找不到它显示此错误的原因 以下是显示错误的代码部分: CREATE OR REPLACE FUNCTION public.fnc_Name( param character varying) RETURNS json AS $BODY$ Declare --VAriables _result varchar; _error_code varchar; _error_msg varch

我在create function语句中收到一个语法错误,无论我做什么尝试,我似乎都找不到它显示此错误的原因

以下是显示错误的代码部分:

CREATE OR REPLACE FUNCTION public.fnc_Name(
    param character varying)
 RETURNS json
AS $BODY$

Declare
--VAriables
   _result varchar;
   _error_code varchar;
   _error_msg varchar;

BEGIN

--redacted code

    BEGIN
    exception when OTHERS then
        _result = -1;
        _error_code = 130;
            GET STACKED DIAGNOSTICS _error_msg = MESSAGE_TEXT;    
            SELECT json_build_object('status', _status , 'error_code' , 
    _error_code, 'error_message', _error_msg) INTO _result;
    return _result;
    END;

END; --Error shows at this ; 
$BODY$
LANGUAGE plpgsql;

这是我在pgsql上的PostgreSQL 10的工作。可能您的postgresql客户端有一些问题,或者您的Postgres版本太旧。我正在运行pgsql 9.5.13,目前无法升级。9.5应该可以。它还不太老。尝试通过psql粘贴您的函数。您可能正在使用一个混乱的客户端。使用不同的东西,理想情况下是
psql
。您使用的是哪种SQL客户机?它可能对美元报价一无所知