Ошибка при создании пользовательской функции в postgreSQL на языке SQL - PullRequest
0 голосов
/ 07 мая 2020

Я пытаюсь создать следующий SQL (единственный язык, который мне нужен для моего варианта использования), определяемую пользователем функцию в PostgreSQL.

CREATE function sql_replace(textinput text,pattern character,lefttext integer,righttext integer)
    returns text AS $$
    DECLARE strlength integer default 0;
    BEGIN
        strlength = length($1);
        return substr($1,1,$3 )
        ||regexp_replace(substr($1,$3+1,(strlength-$3-$4)),'[0-9]',$2)
        ||substr($1,(strlength-$4+1),$4 );
    -- Additional logic
    END;
    $$ language SQL VOLATILE;

Я обнаружил ошибку около строки 3 в заявлении об объявлении. Я попытался сделать sh оператор объявления внутри блока begin, но это не помогло. Я также попытался выровнять тип ввода с SQL, но получил ту же ошибку.

error as indicated by the PostgreSQL shell

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...