так, что заказчик попросил в нее добавить новое Поле (пересчитывать ничего не надо, старые значения будут null). Такое может происходить раз в несколько месяцев.
Нужно ли создавать какой-то скрипт на alter table или это можно делать просто ручками и не заморачиваться над автоматизацией?
А без скрипта вы планируете каким-то средством визуального дизайна схемы обойтись? Вы поднимаете, что оно сгенерирует скрипт и выполнит его? При этом вы не будете на 100 процентов уверены в том, что именно оно будет делать, не видя кода скрипта. У вас должен быть какой-то тестовый/staging инстанс для таких экспериментов для начала. И скрипты миграции состояния схемы и данных от одной версии до другой
То есть проще ручками делать, чем писать скрипт?
Вы работаете с клиентскими данными. Ваша задача делать не проще, а лучше. Основными приоритетами должны быть сохранность данных и непрерывность предоставления сервисов, с ними связанных. Лучше написать тривиальный скрипт ручками. Если это пока вызывает сложности, то воспользуйтесь такой средой управления бд и схемами, которая умеет их генерировать. Изучите результат и превратите в свой скрипт. Визуальный дизайнер может вместо alter сделать drop + create. Для схемы разницы нет. Для данных - очень большая.
Да, но добавление поля не вызывает drop+create. По крайне мере, SSMS. Подобное случается при изменении типа поля. И SSMS в этом случае создаёт временную таблицу, в которую переливает данные, а затем переименовывает, убивая старую таблицу.
Если поле добавляется в конце то не вызывает.
Вы же узнали это из результатов анализа скрипта, созданного ssms? Не с продом экспериментировали? Я знаю, что генерирует ssms - 13 лет с mssql работал. Но нам не было сказано ничего ни про базу, ни про средства управления. И все равно я это с mssql делал скриптами
Бд Hive. Данные в паркетах хранятся.
Обсуждают сегодня