|
|
|
Как узнать тип данных переменной внутри блока PL/SQL?
|
|||
|---|---|---|---|
|
#18+
Вот с помощью DUMP() можно получить код типа данных значения: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. NAMETYPECODEnvarchar21number2date13raw23xmltype58rowid69varchar296timestamp188iytm189idts190 А можно ли подобным образом понять какой тип у значения в PL/SQL блоке? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2017, 02:11 |
|
||
|
Как узнать тип данных переменной внутри блока PL/SQL?
|
|||
|---|---|---|---|
|
#18+
any% в помощь. В смысле - кастуешь в ANY, затем разбираешь что получил. Ну или просто DBMS_SQL - там можно describe ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2017, 02:22 |
|
||
|
Как узнать тип данных переменной внутри блока PL/SQL?
|
|||
|---|---|---|---|
|
#18+
andrey_anonymousany% в помощь. В смысле - кастуешь в ANY, затем разбираешь что получил. Ну или просто DBMS_SQL - там можно describeПолагаю, DBMS_SQL не подойдет, поскольку с его помощью можно только сделать DESCRIBE_ COLUMNS , в то время как мне нужно узнать тип значения в контексте PL/SQL . А что касается ANY% - можно примерчик, пожалуйста? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2017, 02:36 |
|
||
|
Как узнать тип данных переменной внутри блока PL/SQL?
|
|||
|---|---|---|---|
|
#18+
--Eugene--значения в контексте PL/SQL А можно вот с этого места поподробнее? Откуда в контексте pl/sql значение неизвестного типа? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2017, 02:47 |
|
||
|
Как узнать тип данных переменной внутри блока PL/SQL?
|
|||
|---|---|---|---|
|
#18+
andrey_anonymousОткуда в контексте pl/sql значение неизвестного типа?Например вот отсюда: Код: plsql 1. 2. 3. Какой тип у переменной :x? Вообще говоря, не суть важно откуда. Так или иначе он есть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2017, 03:39 |
|
||
|
Как узнать тип данных переменной внутри блока PL/SQL?
|
|||
|---|---|---|---|
|
#18+
--Eugene--, Разве переменная не была объявлена ранее с явно указанным типом данных? Или вы хотите в варчар положить дату, а потом понять, что это именно дата, а не строка? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2017, 05:14 |
|
||
|
Как узнать тип данных переменной внутри блока PL/SQL?
|
|||
|---|---|---|---|
|
#18+
--Eugene--andrey_anonymousОткуда в контексте pl/sql значение неизвестного типа?Например вот отсюда: Код: plsql 1. 2. 3. Какой тип у переменной :x? Вообще говоря, не суть важно откуда. Так или иначе он есть. select regexp_substr(dump(:x), 'Typ=(\d+)', 1, 1, '', 1) typecode from dual ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2017, 10:30 |
|
||
|
Как узнать тип данных переменной внутри блока PL/SQL?
|
|||
|---|---|---|---|
|
#18+
Be or not to be...Разве переменная не была объявлена ранее с явно указанным типом данных?Где вы видите явное объявление переменной в анонимном блоке Код: plsql 1. ? типа биндselect regexp_substr(dump(:x), 'Typ=(\d+)', 1, 1, '', 1) typecode from dual Не вполне понятен Ваш сарказм Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2017, 13:40 |
|
||
|
Как узнать тип данных переменной внутри блока PL/SQL?
|
|||
|---|---|---|---|
|
#18+
--Eugene--Не вполне понятен Ваш сарказм И где тут сарказм? Коллега предложил Вам вариант, который я сам имел ввиду, когда говорил про dbms_sql. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2017, 13:47 |
|
||
|
Как узнать тип данных переменной внутри блока PL/SQL?
|
|||
|---|---|---|---|
|
#18+
andrey_anonymous--Eugene--Не вполне понятен Ваш сарказм И где тут сарказм? Коллега предложил Вам вариант, который я сам имел ввиду, когда говорил про dbms_sql. Расписывать не стал, поскольку в голове бродит другая мысль - не возиться с typecodes, которые, вообще говоря, являются свойством реализации и теоретически могут смениться без предупреждения, а (именно для PL/SQL) попробовать перегрузку функции. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2017, 13:49 |
|
||
|
Как узнать тип данных переменной внутри блока PL/SQL?
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2017, 13:58 |
|
||
|
Как узнать тип данных переменной внутри блока PL/SQL?
|
|||
|---|---|---|---|
|
#18+
dbms_photoshopВ свое время уже повозились. Баян, но меня всегда забавлял дамп даты: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2017, 14:42 |
|
||
|
Как узнать тип данных переменной внутри блока PL/SQL?
|
|||
|---|---|---|---|
|
#18+
Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. Код: 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. 47. 48. 49. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2017, 19:33 |
|
||
|
Как узнать тип данных переменной внутри блока PL/SQL?
|
|||
|---|---|---|---|
|
#18+
andrey_anonymous, ха, перегруженная функция - об этом я как-то не подумал :) только вот придется нафигачить функций под каждый тип. наивно полагал, что индусы уже это сделали за меня)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2017, 22:09 |
|
||
|
Как узнать тип данных переменной внутри блока PL/SQL?
|
|||
|---|---|---|---|
|
#18+
--Eugene--, чего ты хочешь добиться то? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2017, 12:19 |
|
||
|
Как узнать тип данных переменной внутри блока PL/SQL?
|
|||
|---|---|---|---|
|
#18+
--Eugene--только вот придется нафигачить функций под каждый тип. можно создать Тип как контейнер данных. Код: 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2017, 12:22 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39480066&tid=1885668]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
186ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
71ms |
get tp. blocked users: |
1ms |
| others: | 238ms |
| total: | 538ms |

| 0 / 0 |
