powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / логируется ли Add column ASE 12.5.x
3 сообщений из 3, страница 1 из 1
логируется ли Add column ASE 12.5.x
    #34949862
Kru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Возник такой вопрос:
В доках указан список операций DDL которые вызывают копирование данных и следовательно, по умолчанию, массированное заполнение лога, в случае большого кол-ва записей.

Add column в этом списке нет. Однако, что будет если в таблицу скажем с миллионом добавить столбец с identity? Будет ли по умолчанию логироваться все значения identity для этого поля?

Заранее спасибо
...
Рейтинг: 0 / 0
логируется ли Add column ASE 12.5.x
    #34949969
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kru пишет:
> В доках указан список операций DDL которые вызывают копирование данных и
> следовательно, по умолчанию, массированное заполнение лога, в случае
> большого кол-ва записей.
>
> Add column в этом списке нет. Однако, что будет если в таблицу скажем с
> миллионом добавить столбец с identity?

ADD COLUMN может быть двух видов -- требующий физического пересоздания
таблицы и не требующий. Если новая колонка - NULL, то она просто создается
в каталоге таблицы, идет в ее конец и ничего модиФицировать не надо.
Если она NOT NULL (при этом она должна обязательно иметь DEFAULT), то
таблица физически перезаписывается. Но при этом, насколько я помню,
используются внутренние аналоги механизма Bulk copy, т.е. при этом
логируется только выделение места под новый вариант таблицы и удаление
старой. Сами данные - нет. Но все равно такой ALTER большой таблицы --
это большая нагрузка на лог, к этому надо быть готовым.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
логируется ли Add column ASE 12.5.x
    #34950113
Kru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZiv
Kru пишет:
> В доках указан список операций DDL которые вызывают копирование данных и
> следовательно, по умолчанию, массированное заполнение лога, в случае
> большого кол-ва записей.
>
> Add column в этом списке нет. Однако, что будет если в таблицу скажем с
> миллионом добавить столбец с identity?

ADD COLUMN может быть двух видов -- требующий физического пересоздания
таблицы и не требующий. Если новая колонка - NULL, то она просто создается
в каталоге таблицы, идет в ее конец и ничего модиФицировать не надо.
Если она NOT NULL (при этом она должна обязательно иметь DEFAULT), то
таблица физически перезаписывается. Но при этом, насколько я помню,
используются внутренние аналоги механизма Bulk copy, т.е. при этом
логируется только выделение места под новый вариант таблицы и удаление
старой. Сами данные - нет. Но все равно такой ALTER большой таблицы --
это большая нагрузка на лог, к этому надо быть готовым.
Posted via ActualForum NNTP Server 1.4

Наверное минимизировать логирование при помощи select into/bulkcopy/pllsort тогда не получится, т.к. логируются не данные а разные системные изменения.

Если я правильно всё понял, то в случае необходимости добавления нового столбца Not null, потребуется запастись логовым пространством.

Большое спасибо
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / логируется ли Add column ASE 12.5.x
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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