Kind of error-handler in a pgsql function

Поиск
Список
Период
Сортировка
От DI Hasenöhrl
Тема Kind of error-handler in a pgsql function
Дата
Msg-id 00c401c104c0$b9a03200$01011eac@irina
обсуждение исходный текст
Ответы Re: Kind of error-handler in a pgsql function  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: Kind of error-handler in a pgsql function  (Alex Pilosov <alex@pilosoft.com>)
Список pgsql-sql
Hi,
 
When I write in psql:
testdb=# update table1 set tableattribute='any' where table_nr=1;
    if a tuple exists, I get this message
testdb=# update 1
    if no tuple with table_nr=1 exists, I get this message
testdb=# update 0
   
 
Is there a possibility to make a difference in a pgsql function like this:
create function updTable(text,integer) returns int AS
'DECLARE
   msg ALIAS FOR $1;
   nr    ALIAS FOR $2;
 BEGIN
     update table1 set tableattribute=msg where table_nr=nr;
     --pseudocode
       if update = 0 then
         return 0;
       else
         return 1;
       end if;
   END;
'language 'plpgsql';
 
or for a function, which inserts data:
create function insTable(text,integer) returns int AS
'DECLARE
   msg ALIAS FOR $1;
   nr    ALIAS FOR $2;
 BEGIN
     insert into table1 values (nr,msg);
     --pseudocode
       if error= cannot insert duplicate key.....then
         return 0;
       else
         return 1;
       end if;
   END;
'language 'plpgsql';
 
I want to know the result of an insert or update, because I call these functions from an Access form and the next steps of the program depend on these results.
 
I hope, someone can help me, because I didn't find anything in the docu or mailing list.
Thanks in advance
Irina
 

В списке pgsql-sql по дате отправления:

Предыдущее
От: Martín Marqués
Дата:
Сообщение: Re: count(*)
Следующее
От: Tom Lane
Дата:
Сообщение: Re: Kind of error-handler in a pgsql function