
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
05.12.2017, 11:17
|
|||
|---|---|---|---|
|
|||
Определить передан ли параметр на самом деле |
|||
|
#18+
Здравствуйте! Задумка такая - определить передан ли параметр на самом деле или использовано значение по умолчанию. Понимаю, что можно использовать заведомо невероятные дефолтные значения, но это будет ерунда и код будет смотреться нелепо и смешно. Нужно это для того, чтобы построить логику процедуры в зависимости от комбинации переданных параметров. Может быть профи знают какой - то тайный код, который позволит это сделать? Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.12.2017, 11:18
|
|||
|---|---|---|---|
Определить передан ли параметр на самом деле |
|||
|
#18+
PARAMМожет быть профи знают какой - то тайный код, который позволит это сделать?overload vs default ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.12.2017, 11:21
|
|||
|---|---|---|---|
|
|||
Определить передан ли параметр на самом деле |
|||
|
#18+
ElicPARAMМожет быть профи знают какой - то тайный код, который позволит это сделать?overload vs default Да не хотелось бы перегрузкой делать (если вы это имели ввиду). Может переданные параметры помещаются в какой массив, как в js, например? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.12.2017, 11:24
|
|||
|---|---|---|---|
Определить передан ли параметр на самом деле |
|||
|
#18+
PARAMМожет переданные параметры помещаются в какой массив, как в js, например?Чудес не бывает. Но ты сам можешь строить своё API на основе массивов (брррр…). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.12.2017, 11:37
|
|||
|---|---|---|---|
|
|||
Определить передан ли параметр на самом деле |
|||
|
#18+
ElicPARAMМожет переданные параметры помещаются в какой массив, как в js, например?Чудес не бывает. Но ты сам можешь строить своё API на основе массивов (брррр…). Жаль, что чудес не бывает ))) И массив - действительно брр... Ситуация отягощается еще и тем, что для текста невозможно разделить null и пустую строку ((( Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Так можно было бы отличить переданный null от дефолтного значения (пустой строки). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.12.2017, 11:48
|
|||
|---|---|---|---|
|
|||
Определить передан ли параметр на самом деле |
|||
|
#18+
PARAM, Можно завернуть в пакет две процедуры с одинаковыми именем и разными аргументами... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.12.2017, 11:51
|
|||
|---|---|---|---|
|
|||
Определить передан ли параметр на самом деле |
|||
|
#18+
Единственное, что пришло в мой воспаленный мозг, это: 1. Все параметры сделать строковыми 2. Назначить им дефолтное значение - '%' 3. Проверять на соответствие этому символу и его наличие принимать за признак "не передан" 4. Надеяться на чудо ))) Жаль, что в Oracle нет библиотеки именно для обработки переданных параметров... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.12.2017, 11:53
|
|||
|---|---|---|---|
|
|||
Определить передан ли параметр на самом деле |
|||
|
#18+
avanyuginPARAM, Можно завернуть в пакет две процедуры с одинаковыми именем и разными аргументами... Можно, но это будет перегрузка. А зачем нам перегрузка, нам перегрузка не нужна ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.12.2017, 11:56
|
|||
|---|---|---|---|
Определить передан ли параметр на самом деле |
|||
|
#18+
PARAMЖаль, что в Oracle нет библиотеки именно для обработки переданных параметров...А в каком ЯП есть инструмент, без перегрузки позволяющий понять, что аргумент при вызове "не передан"/"не указан" или "передано значение по умолчанию"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.12.2017, 12:00
|
|||
|---|---|---|---|
|
|||
Определить передан ли параметр на самом деле |
|||
|
#18+
AmKadPARAMЖаль, что в Oracle нет библиотеки именно для обработки переданных параметров...А в каком ЯП есть инструмент, без перегрузки позволяющий понять, что аргумент при вызове "не передан"/"не указан" или "передано значение по умолчанию"? В JS формируется массив переданных параметров, насколько помню. По нему можно определить какие параметры были переданы и отличить от дефолтных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.12.2017, 12:05
|
|||
|---|---|---|---|
Определить передан ли параметр на самом деле |
|||
|
#18+
PARAM, Странный подход: сначала устроить себе геморрой, а потом искать методы его лечения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.12.2017, 12:32
|
|||
|---|---|---|---|
Определить передан ли параметр на самом деле |
|||
|
#18+
IkirPARAM, Странный подход: сначала устроить себе геморрой, а потом искать методы его лечения. В каком смысле? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.12.2017, 13:06
|
|||
|---|---|---|---|
Определить передан ли параметр на самом деле |
|||
|
#18+
IkirСтранный подход: сначала устроить себе геморрой, а потом искать методы его лечения.Вакцины/лекарства от некоторых бактерий так изобретались. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.12.2017, 13:16
|
|||
|---|---|---|---|
Определить передан ли параметр на самом деле |
|||
|
#18+
FoxterВ каком смысле?Видимо это было такое замечание, что, мол, придумали в оракле отождествить пустую строку с null-ом, а ораклисты мучаются в попытке отличить одно от другого. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.12.2017, 13:42
|
|||
|---|---|---|---|
Определить передан ли параметр на самом деле |
|||
|
#18+
PARAMПонимаю, что можно использовать заведомо невероятные дефолтные значения Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. где параноидальные базовые константы никак не связаны с предметной областью приложения. Если пользователь настолько туп, что передаёт базовую параноидальную константу, то считать его роботом и не реагировать дополнительно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.12.2017, 14:06
|
|||
|---|---|---|---|
Определить передан ли параметр на самом деле |
|||
|
#18+
envнастолько туп Я бы сказал "изобретателен". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.12.2017, 15:59
|
|||
|---|---|---|---|
Определить передан ли параметр на самом деле |
|||
|
#18+
FoxterВ каком смысле? В том смысле, что, если вам патологически необходимо отделить переданные параметры и дефолтные, то зачем присваивать дефолтные значения в объявлении процедуры? Присвойте их после обработки входных параметров. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.12.2017, 16:13
|
|||
|---|---|---|---|
|
|||
Определить передан ли параметр на самом деле |
|||
|
#18+
Ikir Присвойте их после обработки входных параметров.Для этого придется определять, что пользователь не передал обязательный параметр. Внутри процедуры сделать этого не получится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.12.2017, 16:18
|
|||
|---|---|---|---|
Определить передан ли параметр на самом деле |
|||
|
#18+
тогда проще, имхо, использовать функцию Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=52&mobile=1&tid=1884792]: |
0ms |
get settings: |
6ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
54ms |
get topic data: |
5ms |
get forum data: |
2ms |
get page messages: |
30ms |
get tp. blocked users: |
1ms |
| others: | 213ms |
| total: | 326ms |

| 0 / 0 |
