Обсуждение: Question to CREATE FUNCTION
Hi all
I defined the following function:
CREATE FUNCTION ka(member)
RETURNS member AS
'UPDATE member SET m_email = ''unbekannt'' WHERE m_email = NULL:
SELECT * FROM member;'
LANGUAGE 'sql';
If I call
SELECT ka(member) FROM member;
ka
-------------
12257440
.....
I get this number as many times as the table consists rows (no matter
weather they were updated or not). Could anybody tell me what kind of
result this is? What does this number mean?
If I use the notation with $1 like in the Programmers Guide in chapter
13.1.3 I get a parsing error. (??)
Could anybody explain this behaviour?
Thanks and greetings
Conni
See 7.2 Doc $ 12.2.3 "In the present release of PostgreSQL there are some unpleasant restrictions on how functions returning composite types can be used. Briefly, when calling a function that returns a row, we cannot retrieve the entire row. We must either project a single attribute out of the row or pass the entire row into another function. (Trying to display the entire row value will yield a meaningless number.) " ___________________________________________ Jacques Massé Tel. 33 (0)5 57 89 08 11 - Fax 33 (0)5 57 89 08 01