#sql #postgresql
Вопрос:
У меня следующий вопрос. Я создал хранимую процедуру в PostgreSQL и не могу ее выполнить, я пытался использовать exec , но получаю странную ошибку.
Вот моя сохраненная функция:
DROP PROCEDURE IF EXISTS checkName();
CREATE PROCEDURE checkName(c_Name varchar)
LANGUAGE plpgsql
AS $
declare notify_msg text := 0;
BEGIN
if(LENGTH(c_Name) > 41) THEN
notify_msg = 'Restaurant name can not be longer than 41 characters.';
END IF;
END;
$;
COMMENT ON PROCEDURE checkName IS 'This procedure checks if the restaurant name is longer than 40 characters';
И вот как я пытался это выполнить:
exec checkName('ThisIsTest');
Это ошибка, которую я получаю:
ERROR: FEHLER: Funktion »checkname« existiert bereits mit den selben Argumenttypen
Существует ли другой способ выполнения хранимой процедуры в PostgreSQL.
Комментарии:
1. postgresql.org/docs/current/sql-call.html
2. @a_horse_with_no_name Могу я спросить вас еще об одной вещи ?
Ответ №1:
Согласно документации, вы должны использовать
$ Вызов функции