|
Как бы малой кровью разрешить to_char(при CLOB>4000), подобно как это было в Oracle 9
|
|||
---|---|---|---|
#18+
Приветствую! В Oracle 9 можно было безбоязненно писать to_char(CLOB_поле) не парясь, что там длина текста может быть > 4000. Текст автоматически обрезался до 4000 знаков. Попробовал в Oracle 19,так вылетает с ошибкой ORA-22835, вот в моём конкретном случае для длины 4012 знаков пишет "ORA-22835: Buffer too small for CLOB to CHAR or BLOB to RAW conversion (actual: 4012, maximum: 4000)" теперь вопрос существует ли в базе какой-нибудь волшебный параметр, просто установив который в "true" вызовы to_char бы стали вести себя, как в Oracle 9, молча обрезая первые 4000 знаков? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2021, 16:02 |
|
Как бы малой кровью разрешить to_char(при CLOB>4000), подобно как это было в Oracle 9
|
|||
---|---|---|---|
#18+
Кроик Семён, event 22836 level 1 Код: 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. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2021, 16:29 |
|
Как бы малой кровью разрешить to_char(при CLOB>4000), подобно как это было в Oracle 9
|
|||
---|---|---|---|
#18+
Код: plsql 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2021, 17:38 |
|
Как бы малой кровью разрешить to_char(при CLOB>4000), подобно как это было в Oracle 9
|
|||
---|---|---|---|
#18+
SeaGate event 22836 level 1 это очень круто еще не проверял правда спасибо огромное! ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2021, 18:36 |
|
Как бы малой кровью разрешить to_char(при CLOB>4000), подобно как это было в Oracle 9
|
|||
---|---|---|---|
#18+
=nomad=SUBSTRB(l_buffer, 1, 4000) спасибо за совет, но так то оно так, но я хотел именно "малой кровью" без адаптации SQL-запросов под новые реалии ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2021, 18:39 |
|
Как бы малой кровью разрешить to_char(при CLOB>4000), подобно как это было в Oracle 9
|
|||
---|---|---|---|
#18+
Кроик Семён SeaGate event 22836 level 1 это очень круто еще не проверял правда спасибо огромное! Код: plsql 1.
проверил, оно работает, класс применил к системе Код: plsql 1.
и стало ещё душевнее ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2021, 19:13 |
|
Как бы малой кровью разрешить to_char(при CLOB>4000), подобно как это было в Oracle 9
|
|||
---|---|---|---|
#18+
Надеюсь, я этим не сломал какие-нибудь важные штуки ... ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2021, 19:20 |
|
Как бы малой кровью разрешить to_char(при CLOB>4000), подобно как это было в Oracle 9
|
|||
---|---|---|---|
#18+
Кроик Семён применил к системе Код: plsql 1.
и стало ещё душевнее Стоит учитывать, что работать будет до первой перезагрузки. На постоянной основе нужно установить в spfile или logon trigger для конкретной PDB/пользователя, т.к. v$parameter.ispdb_modifiable='FALSE'. Код: 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2021, 23:13 |
|
Как бы малой кровью разрешить to_char(при CLOB>4000), подобно как это было в Oracle 9
|
|||
---|---|---|---|
#18+
SeaGate, спасибо, ценное дополнение ... |
|||
:
Нравится:
Не нравится:
|
|||
29.10.2021, 01:07 |
|
Как бы малой кровью разрешить to_char(при CLOB>4000), подобно как это было в Oracle 9
|
|||
---|---|---|---|
#18+
будет что рассказать потом про "it's not a bug it's a feature" Oracle versions 9i and 10.1 have a bug in a LOB to CHAR conversion .... https://mvelikikh.blogspot.com/2021/10/workaround-for-ora-22835-buffer-too.html ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2021, 01:32 |
|
|
start [/forum/topic.php?fid=52&msg=40108871&tid=1879777]: |
0ms |
get settings: |
26ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
70ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
203ms |
get tp. blocked users: |
2ms |
others: | 373ms |
total: | 711ms |
0 / 0 |