Thread: 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