|
Ошибка при вызове функции -- подскажите что не так?
|
|||
---|---|---|---|
#18+
Создаю функцию: CREATE OR REPLACE FUNCTION test() RETURNS SETOF TEXT AS ' DECLARE colval RECORD; BEGIN FOR colval IN SELECT * FROM property LOOP RETURN NEXT colval.name; END LOOP; RETURN; END; ' LANGUAGE 'plpgsql'; Функция создается успешно, но когда пытаюсь вызвать select * FROM test(); выдает ошибку: ERROR: parser: parse error at or near "(" народ, подскажите плиз что не так? зы: работаю через psql ... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2003, 16:06 |
|
Ошибка при вызове функции -- подскажите что не так?
|
|||
---|---|---|---|
#18+
А версия PostgreSQL? У меня ваша ф-я (с моей, правда, таблой) отрабатывает в 7.3.4 нормально . Вчера наблюдал такое сообщение /parse error at or near "("/ при попытке именно такого вызова (правда ф-ии на ' LANGUAGE 'sql') из 7.0. Но можно было вызвать как SELECT function(); вместо SELECT * FROM function(); что не спасало, ибо SELECT function() (похоже) возвращал набор oid-ов (одних и тех-же) вместо набора записей объявленной (табличной) струтуры. Правда результат отработки ф-ии я все-таки видел (потом) в заполняемой ей таблице. А вот в 7.3. попытка вызвать сет как SELECT function(); в вашем случае не завершится успехом. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2003, 17:26 |
|
Ошибка при вызове функции -- подскажите что не так?
|
|||
---|---|---|---|
#18+
у меня версия 7.2.1.beta4 под вини Если не ошибаюсь select funk() используется для получения одиночного результата, для получения набора записей используется select * from funk() ... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2003, 17:46 |
|
Ошибка при вызове функции -- подскажите что не так?
|
|||
---|---|---|---|
#18+
Я тоже так думал. Но мне 7.0 возвратил безымянную колонку, забитую одним и тем же значением. число записей совпало с числом записей в возвращаемой таблице. А SELECT * FROM fun(); не пропускается парсером 7.0 (как, видимо, и 7.2). ... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2003, 17:56 |
|
|
start [/forum/topic.php?fid=53&gotonew=1&tid=2008024]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
75ms |
get topic data: |
10ms |
get first new msg: |
8ms |
get forum data: |
3ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
others: | 341ms |
total: | 517ms |
0 / 0 |