|
Тема
|
PоstgreSQL output parametur
|
|
Автор |
VladoVasilev (минаващ) |
Публикувано | 06.02.07 00:55 |
|
Здравейте!
Начинаещ съм с PоstgreSQL. Искам да напиша функция, която да има изходен параметър (конкретно в него да връщам някакво съобщение тип "Не сте въвели еди какво си"),Доколкото прочетох от документацията, изходните параметри трябвало да са колони в SELECT Query, което трябва да се изпълни в тялото на процедурата. Няма ли как да се направи нещо подобно:
CREATE OR REPLACE FUNCTION "F_1"(out err_msg text)
RETURNS int2 AS
$BODY$
begin
err_msg := 'Some message here';
...
...
return 0;
exception
when others then
err_msg := 'Error.';
return 1;
end;
$BODY$
LANGUAGE 'plpgsql' VOLATILE;
| |
|
ами не разбрах какво точно имаш предвид, но ето как си викаш функция с out параметри от друга функция
CREATE OR REPLACE FUNCTION test(out test text, out res integer) AS $$
begin
test := 'eho';
res := 1;
end;
$$ LANGUAGE plpgsql;
CREATE OR REPLACE FUNCTION test2() returns text AS $$
declare result record;
begin
SELECT INTO result * FROM test();
if result.res = 1 then
return result.test;
else
return 'Error ocured!';
end if;
end;
$$ LANGUAGE plpgsql;
примерът е глупав, но мисля, че за такова нещо питаш
| |
|
|
|
|