powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / ALTER COLUMN NOT NULL Не хватает места.
12 сообщений из 12, страница 1 из 1
ALTER COLUMN NOT NULL Не хватает места.
    #40064148
alHaos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день уважаемые.

Таблица большая и транзакция генерирует много информации в логе столько на сервере нет.
ALTER TABLE [dbo].[table_name] ALTER COLUMN [Value] [float] NOT NULL

Есть какая либо возможность провести эту транзакцию с меньшим протоколированием?
...
Рейтинг: 0 / 0
ALTER COLUMN NOT NULL Не хватает места.
    #40064150
msLex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alHaos
Добрый день уважаемые.

Таблица большая и транзакция генерирует много информации в логе столько на сервере нет.
ALTER TABLE [dbo].[table_name] ALTER COLUMN [Value] [float] NOT NULL

Есть какая либо возможность провести эту транзакцию с меньшим протоколированием?


Создать новую таблицу и перелить туда данные порциями с таблоком
...
Рейтинг: 0 / 0
ALTER COLUMN NOT NULL Не хватает места.
    #40064152
alHaos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
msLex, Благодарю.
Если не найду другого варианта видимо придется так и делать.
Есть еще мнения?
...
Рейтинг: 0 / 0
ALTER COLUMN NOT NULL Не хватает места.
    #40064160
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть сервер версии 2012+, то

  • добавить null-поле с дефолтом
  • обновить данные порциями
  • сделать alter полю на not null (опционально)
...
Рейтинг: 0 / 0
ALTER COLUMN NOT NULL Не хватает места.
    #40064168
msLex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гавриленко Сергей Алексеевич
сделать alter полю на not null (опционально)


Это же то же самое, что и пытается сделать ТС
...
Рейтинг: 0 / 0
ALTER COLUMN NOT NULL Не хватает места.
    #40064173
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
msLex
Гавриленко Сергей Алексеевич
сделать alter полю на not null (опционально)


Это же то же самое, что и пытается сделать ТС
А, проглядел. Почудилось, что там добавление поля.
...
Рейтинг: 0 / 0
ALTER COLUMN NOT NULL Не хватает места.
    #40064199
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что будет записано в журнал в таких объемах? Обновляется лишь битовая маска NULL и происходит проверка значений в столбце.
...
Рейтинг: 0 / 0
ALTER COLUMN NOT NULL Не хватает места.
    #40064204
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владислав Колосов
А что будет записано в журнал в таких объемах? Обновляется лишь битовая маска NULL и происходит проверка значений в столбце.
Надо смотреть журнал.
Возможно, такие изменения приводят к записи в журнал удаления старой и добавления новой строки.
...
Рейтинг: 0 / 0
ALTER COLUMN NOT NULL Не хватает места.
    #40064205
aleks222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гавриленко Сергей Алексеевич
Владислав Колосов
А что будет записано в журнал в таких объемах? Обновляется лишь битовая маска NULL и происходит проверка значений в столбце.
Надо смотреть журнал.
Возможно, такие изменения приводят к записи в журнал удаления старой и добавления новой строки.


Ну буйная фантазия.
Колонка создается новая и все содержимое старой колонки копируется в новую.
...
Рейтинг: 0 / 0
ALTER COLUMN NOT NULL Не хватает места.
    #40064207
msLex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alHaos
msLex, Благодарю.
Если не найду другого варианта видимо придется так и делать.
Есть еще мнения?



Вот тут просто подправить 1-й пункт и заменить 3-й

Гавриленко Сергей Алексеевич
Есть сервер версии 2012+, то

  • добавить not null-поле с дефолтом
  • обновить данные порциями
  • удалить старое поле + переименовать новое
...
Рейтинг: 0 / 0
ALTER COLUMN NOT NULL Не хватает места.
    #40064225
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aleks222,

в таком случае добавление новой NOT NULL колонки приводит к полной перезаписи строк, система должна создать скрытый объект, скопировать все строки и заменить местами таблицу и новый набор. Заполнение новой колонки данными не должно привести таблицу в несогласованное состояние.
...
Рейтинг: 0 / 0
ALTER COLUMN NOT NULL Не хватает места.
    #40064235
aleks222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владислав Колосов
aleks222,

в таком случае добавление новой NOT NULL колонки приводит к полной перезаписи строк, система должна создать скрытый объект, скопировать все строки и заменить местами таблицу и новый набор. Заполнение новой колонки данными не должно привести таблицу в несогласованное состояние.

К чему эти домыслы? Логики не просматривается.
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / ALTER COLUMN NOT NULL Не хватает места.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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