powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / запись более 4 тыс символов c помощью Tabular
13 сообщений из 13, страница 1 из 1
запись более 4 тыс символов c помощью Tabular
    #39118086
UchO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго дня

Апекс 4.2
Oracle 12C

Таблица имеет поле clob, изменение записи в таблице может приводить к тому, что длина составляет более 4 тыс символов, что, при сохранении изменений приводит к ошибке по ограничению длины(более 4000 символов).

Накат изменений - стандартный апексовый процесс, MRU.

Возможно ли в рамках стандартного процесса обойти ограничение на длину записываемой строки?

Вариант уйти от стандартного апексового процесса и переписать его вручную, безусловно, рассматривается, и видится сейчас основным.
Интересно мнение, есть ли возможность справиться с этим в рамках стандартного функционала.
...
Рейтинг: 0 / 0
запись более 4 тыс символов c помощью Tabular
    #39118096
Vladml
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ограничение на запись CLOB стандартными методами 32К
...
Рейтинг: 0 / 0
запись более 4 тыс символов c помощью Tabular
    #39118110
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в 5-ке не поменялось?
У меня тоже юзвери пока терпят < 4000симв.
Надолго ли, не знаю. Но и длинный текст мне по БЛ не выгоден.
ЗЫ
В 5.1 вроде говорили новый Tabular
...
Рейтинг: 0 / 0
запись более 4 тыс символов c помощью Tabular
    #39118116
Vladml
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
сорри не заметил что имеется в виду tabular.
...
Рейтинг: 0 / 0
запись более 4 тыс символов c помощью Tabular
    #39118136
blkangel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
UchOДоброго дня

Апекс 4.2
Oracle 12C

Таблица имеет поле clob, изменение записи в таблице может приводить к тому, что длина составляет более 4 тыс символов, что, при сохранении изменений приводит к ошибке по ограничению длины(более 4000 символов).

Накат изменений - стандартный апексовый процесс, MRU.

Возможно ли в рамках стандартного процесса обойти ограничение на длину записываемой строки?

Вариант уйти от стандартного апексового процесса и переписать его вручную, безусловно, рассматривается, и видится сейчас основным.
Интересно мнение, есть ли возможность справиться с этим в рамках стандартного функционала.

Вообще редактировать CLOB внутри табулярной формы, это как то... Я даже не представляю как это выглядит... Все таки я считаю, что табуляр это грид для не больших данных.
Мне кажется самым правильным вариантом, отказаться от clob в табуляре, может открывать окно с формой для заполнения данных, либо окно для заполнения clob
...
Рейтинг: 0 / 0
запись более 4 тыс символов c помощью Tabular
    #39118146
UchO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
blkangelUchOДоброго дня

Апекс 4.2
Oracle 12C

Таблица имеет поле clob, изменение записи в таблице может приводить к тому, что длина составляет более 4 тыс символов, что, при сохранении изменений приводит к ошибке по ограничению длины(более 4000 символов).

Накат изменений - стандартный апексовый процесс, MRU.

Возможно ли в рамках стандартного процесса обойти ограничение на длину записываемой строки?

Вариант уйти от стандартного апексового процесса и переписать его вручную, безусловно, рассматривается, и видится сейчас основным.
Интересно мнение, есть ли возможность справиться с этим в рамках стандартного функционала.

Вообще редактировать CLOB внутри табулярной формы, это как то... Я даже не представляю как это выглядит... Все таки я считаю, что табуляр это грид для не больших данных.
Мне кажется самым правильным вариантом, отказаться от clob в табуляре, может открывать окно с формой для заполнения данных, либо окно для заполнения clob

Согласен, что так выглядит логично и на такой вариант и стоит переходить.
Поле Clob - в силу того, что чутка не поместились в ограничение 4000 символов, отсюда и пошли по таким "ступеням".

Спасибо!
...
Рейтинг: 0 / 0
запись более 4 тыс символов c помощью Tabular
    #39118260
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
UchO,

Поля из таблицы записываются в коллекцию с описанием:

Код: plsql
1.
2.
3.
    type vc_arr2 is table of varchar2(32767) index by binary_integer;
...
    g_f01             wwv_flow_global.vc_arr2;



соответственно ограничение в типах только 32767, 4000 - ограничение строкового типа в sql

Смотрите, какая ошибка.

Скорее всего нужно перегнать bind variables из строкового типа в clob, потом уже делать update
Соответственно процесс mru сделать условие never (лучше его не удалять), сделать свой процесс , привязанный к табличной форме, со своими insert/update/delete

что-то типа такого:

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
  if :APEX$ROW_STATUS = 'C' then -- CREATED

   l_clob := :column_alias_clob;
   insert into your_table(:column_alias1,...,:column_aliasN,l_clob);

  elsif :APEX$ROW_STATUS = 'U' then -- UPDATED

    l_clob := :column_alias_clob;

    update your_table
    set col1 = :column_alias1
       , col_clob = l_clob
       , ...
    where col_id = :column_alias_id;

  end if;



Если не получится, значит останется только вариант через обработку коллекций g_fxx
...
Рейтинг: 0 / 0
запись более 4 тыс символов c помощью Tabular
    #39118308
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
UchO,

Тьфу ты, в 12с версии ведь ограничение в sql подняли до 32767, почему varchar2 не используете вместо clob, 32767 недостаточно ?
...
Рейтинг: 0 / 0
запись более 4 тыс символов c помощью Tabular
    #39118318
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sql referenceExtended Data Types
Beginning with Oracle Database 12c, you can specify a maximum size of 32767 bytes
for the VARCHAR2, NVARCHAR2, and RAW data types. You can control whether your
database supports this new maximum size by setting the initialization parameter MAX_
STRING_SIZE as follows:
■ If MAX_STRING_SIZE = STANDARD, then the size limits for releases prior to Oracle
Database 12c apply: 4000 bytes for the VARCHAR2 and NVARCHAR2 data types, and
2000 bytes for the RAW data type. This is the default.
■ If MAX_STRING_SIZE = EXTENDED, then the size limit is 32767 bytes for the VARCHAR2,
NVARCHAR2, and RAW data types.

Note: Setting MAX_STRING_SIZE = EXTENDED may update database
objects and possibly invalidate them. Refer to Oracle Database Reference
for complete information on the implications of this parameter and
how to set and enable this new functionality.
...
Рейтинг: 0 / 0
запись более 4 тыс символов c помощью Tabular
    #39118326
UchO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SvDev

Спасибо за идею! Обязательно попробую.

По поводу не использования vrachar2..
Использование в переменных длины более 4000 проходит и вполне успешно.
При создании в таблице поля длиной более 4000 символов - ошибка.

Но это скорей оффтоп.

Спасибо за помощь!
...
Рейтинг: 0 / 0
запись более 4 тыс символов c помощью Tabular
    #39118345
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
UchO,

см. выше, параметр MAX_STRING_SIZE,

в sqlplus можно посмотреть командой show parameter MAX_STRING_SIZE
...
Рейтинг: 0 / 0
запись более 4 тыс символов c помощью Tabular
    #39118355
UchO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SvDevUchO,

см. выше, параметр MAX_STRING_SIZE,

в sqlplus можно посмотреть командой show parameter MAX_STRING_SIZE

Да, спасибо!
Последнее сообщение увидел уже после отправки, посему ответ не поправил.
...
Рейтинг: 0 / 0
запись более 4 тыс символов c помощью Tabular
    #39118495
blkangel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
в 12с, поле типа varchar2 увеличено до 32767
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / запись более 4 тыс символов c помощью Tabular
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]