Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
как не вернуть ничего из хранимки
|
|||
|---|---|---|---|
|
#18+
есть процедура (хранимка) возвращающая запись, если таковая имеется, а как сделать так, чтобы не возвращалось ничего? т.е. если выполняется не хорошее условие - я вызываю EXCEPTION , но хочу вернуть приложению не ошибку, а ничего. т.е. return null; вернет запись с NULL-значениями в ней (т.е. один RECORDSET будете возвращен в любом случае), а вот как чтобы не было ничего, типа select * from aaa where 2=1; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2007, 18:30 |
|
||
|
как не вернуть ничего из хранимки
|
|||
|---|---|---|---|
|
#18+
Можно написать функцию, которая будет возвращать setof [нужный тип]. И при определенных условиях в этой функции ниразу НЕ вызывать return next... Сразу вызвать return. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2007, 19:26 |
|
||
|
как не вернуть ничего из хранимки
|
|||
|---|---|---|---|
|
#18+
спасибо, но в конструкциях SETOF, RETUN без NEXT - не покатит (как минимум в PGSQL 8.1.4). в моем случае хранимка без SETOF, но и тут RETURN; без ничего не катит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2007, 20:18 |
|
||
|
как не вернуть ничего из хранимки
|
|||
|---|---|---|---|
|
#18+
т.е. мне фактически надо превратить "stored function" в "stored procedure" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2007, 20:19 |
|
||
|
как не вернуть ничего из хранимки
|
|||
|---|---|---|---|
|
#18+
resuт.е. мне фактически надо превратить "stored function" в "stored procedure" Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2007, 21:38 |
|
||
|
как не вернуть ничего из хранимки
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2007, 21:43 |
|
||
|
как не вернуть ничего из хранимки
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. спасибо, но хранимка должна (!) возвращать запись или ничего (0 rows), если выполнилось какое-то условие которое я отлавливаю по RAISE EXCEPTION, но в приложение я не хочу передавать ошибку, а только сообщение и "само ето НИЧЕГО" (0 rows) из хранимки. т.е. она у меня : returns <мой_тип> и лишь в частном случае становится как-бы: returns void ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2007, 22:09 |
|
||
|
как не вернуть ничего из хранимки
|
|||
|---|---|---|---|
|
#18+
CREATE OR REPLACE FUNCTION test_null_returning() RETURNS SETOF int4 AS $BODY$ BEGIN IF FALSE THEN RETURN NEXT 1; END IF; RETURN; END$BODY$ LANGUAGE 'plpgsql' VOLATILE; SELECT * FROM test_null_returning(); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2007, 15:55 |
|
||
|
как не вернуть ничего из хранимки
|
|||
|---|---|---|---|
|
#18+
да, все правильно, но для случая с RECORDSET (SETOF) , а если мне нужно лишь record, то ето не прокатит: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2007, 16:06 |
|
||
|
|

start [/forum/topic.php?fid=53&msg=34280256&tid=2005762]: |
0ms |
get settings: |
9ms |
get forum list: |
20ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
34ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
| others: | 233ms |
| total: | 367ms |

| 0 / 0 |
