Re: Get error when calling function that returns a table
От | Tom Lane |
---|---|
Тема | Re: Get error when calling function that returns a table |
Дата | |
Msg-id | 2499067.1711384003@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Get error when calling function that returns a table (Russell Rose | Passfield Data Systems <russellrose@passfield.co.uk>) |
Список | pgsql-sql |
Russell Rose | Passfield Data Systems <russellrose@passfield.co.uk> writes: > I have got a procedure (test.sql) and this calls a function (test_rr.sql) which returns a table. I use the SQL: > Call test(); > I get the error: > ERROR: invalid input syntax for type integer: "(14891,0,"VIMALBA ","P901 ",111.000000)" > CONTEXT: PL/pgSQL function test() line 13 at FETCH > SQL state: 22P02 Didn't test, but I think this: DECLARE my_cur scroll CURSOR FOR SELECT test_rr() ; needs to be more like DECLARE my_cur scroll CURSOR FOR SELECT * FROM test_rr() ; As you have it, the cursor produces a single composite column, which isn't consistent with FETCH FROM my_cur INTO ret1, ret2, ret3, ret4, ret5 ; I vaguely recall that plpgsql will sometimes let you be sloppy about composites versus separate columns, but evidently not here. regards, tom lane
В списке pgsql-sql по дате отправления: