powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / помогите найти ошибку pls
2 сообщений из 2, страница 1 из 1
помогите найти ошибку pls
    #32683141
yyy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
добрый день,

не работает простейшая функция:

CREATE OR REPLACE FUNCTION create_obj(name varchar, hashcode int4) RETURNS int4 as'
DECLARE
idTmp OBJECT.ID%TYPE;
BEGIN
insert into OBJECT(NAME, NAME_HASH) values(name, hashcode);
idTmp := currval('SEQ_OBJ');
RETURN idTmp;
END;
'
LANGUAGE 'plpgsql' VOLATILE;


ERROR: syntax error at or near "$1"
помогите найти ошибку pls.

заранее спасибо!
...
Рейтинг: 0 / 0
помогите найти ошибку pls
    #32683533
mwolf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CREATE OR REPLACE FUNCTION create_obj( name varchar, hashcode int4 ) RETURNS int4 as'

А разве имена тут можно писать?
Обычно пишется так

CREATE OR REPLACE FUNCTION create_obj( varchar, int4 ) RETURNS int4 as'
DECLARE
idTmp OBJECT.ID%TYPE;
BEGIN
insert into OBJECT(NAME, NAME_HASH) values( $1, $2 );
idTmp := currval('SEQ_OBJ');
RETURN idTmp;
END;
'
LANGUAGE 'plpgsql' VOLATILE;
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / помогите найти ошибку pls
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]