|
Функция с возвратом разных типов данных
|
|||
---|---|---|---|
#18+
Добрый день, прошу подсказать возможно ли написать функцию с возвратом различных типов данных, Например , есть таблица table в ней четыре колонки: Col01 - тип varchar2 Col02 - тип number Col03 - тип дата Col04 - любой другой не blob Условия: 1) Входящие параметры в функции func менять/добавлять нельзя 2)Возвращать rowtype нельзя 3) Приводить данные к типу varchar2 и возвращать varchar2 нельзя Возвращаемые типы данные должны быть как в таблице table Create of replace func (mode number) return is v_table table%rowtype; Begin If nvl(mode,0) <= 0 then Return; End if; -begin Select * into v_table From table Where rownum <= 1; Exception When others then null; End; If mode = 1 then --возврат v_table.col01 с ее типом End if; If mode = 2 then -- возврат v_table.col02 с ее типом End if; If mode = 3 then -- возврат v_table.col03 с ее типом End if; If mode = 4 then -- возврат v_table.col04 с ее типом End if; End; Это возможно? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.09.2021, 22:32 |
|
Функция с возвратом разных типов данных
|
|||
---|---|---|---|
#18+
mmmaxxx2011, Если коротко, то нельзя, если пошире, то в оракле есть универсальный тип anydata. А что ты вообще собираешься делать с результатом функции? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2021, 01:44 |
|
Функция с возвратом разных типов данных
|
|||
---|---|---|---|
#18+
mmmaxxx2011 Добрый день, прошу подсказать возможно ли написать функцию с возвратом различных типов данных, Например , есть таблица table в ней четыре колонки: Col01 - тип varchar2 Col02 - тип number Col03 - тип дата Col04 - любой другой не blob Условия: 1) Входящие параметры в функции func менять/добавлять нельзя 2)Возвращать rowtype нельзя 3) Приводить данные к типу varchar2 и возвращать varchar2 нельзя Возвращаемые типы данные должны быть как в таблице table Код: 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.
Это возможно? Для оформления кода используйте, пожалуйста тэг SRC. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2021, 01:47 |
|
Функция с возвратом разных типов данных
|
|||
---|---|---|---|
#18+
Можно возвращать не rowtype, а свой из трех основных типов ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2021, 06:20 |
|
Функция с возвратом разных типов данных
|
|||
---|---|---|---|
#18+
Ну и When others then null в данном примере моветон ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2021, 06:21 |
|
Функция с возвратом разных типов данных
|
|||
---|---|---|---|
#18+
mmmaxxx2011, А чем пакет с overloaded ф-циями не угодил? SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2021, 13:52 |
|
Функция с возвратом разных типов данных
|
|||
---|---|---|---|
#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. 42. 43. 44. 45. 46.
...dbms_sql.return_result, опять-таки, если применимо ... |
|||
:
Нравится:
Не нравится:
|
|||
28.09.2021, 14:06 |
|
|
start [/forum/topic.php?fid=52&msg=40100359&tid=1879868]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
161ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
40ms |
get tp. blocked users: |
1ms |
others: | 264ms |
total: | 509ms |
0 / 0 |