Ограничение длины записи (SET RECORD SIZE LIMIT)
Функция
Определение оператора задания максимально допустимой длины записей таблиц в БД.
Спецификация
::=Синтаксические правила
-
<Длина>задается в байтах. -
Максимально допустимое значение
<длины>записи 65535 байт. Реальная длина записи (в байтах) вычисляется путем округления заданного размера до кратного числу 4096 в большую сторону. Если значение<длины>больше 65535, то выдается предупреждающее сообщение, а размер записи берется равный 65535 (чтобы это значение уместилось в типе данных WORD). -
По умолчанию СУБД устанавливает максимальную длину записи таблиц 4 Кбайта.
Общие правила
-
Для выполнения оператора необходимы привилегии DBA.
-
<Длина>задает размер буфера, который выделяется под распакованную запись. В этот буфер также должна всегда помещаться и упакованная запись, в связи с чем реально максимальный размер записи будет несколько меньше размера буфера (т.к. чем больше столбцов в таблице, тем больше требуется памяти для размещения дополнительной информации в упакованной записи). -
Конструкция
<ограничение длины записи>может изменять длину записи таблиц только в сторону увеличения по сравнению с текущей установленной длиной. -
Чтобы новое ограничение на длину записи стало отслеживаться ядром СУБД ЛИНТЕР, необходимо после выполнения конструкции
<ограничение длины записи>перезапустить ядро.
Примечание
Значение RECORD SIZE LIMIT можно получить с помощью запроса:
SELECT GETWORD($$$s14,130) from $$$sysrl WHERE ROWID=1;