169 похожих чатов

Всем привет. Подскажите, пожалуйста, бест прэктис. Есть витринка. Может быть

так, что заказчик попросил в нее добавить новое Поле (пересчитывать ничего не надо, старые значения будут null). Такое может происходить раз в несколько месяцев.

Нужно ли создавать какой-то скрипт на alter table или это можно делать просто ручками и не заморачиваться над автоматизацией?

10 ответов

25 просмотров

А без скрипта вы планируете каким-то средством визуального дизайна схемы обойтись? Вы поднимаете, что оно сгенерирует скрипт и выполнит его? При этом вы не будете на 100 процентов уверены в том, что именно оно будет делать, не видя кода скрипта. У вас должен быть какой-то тестовый/staging инстанс для таких экспериментов для начала. И скрипты миграции состояния схемы и данных от одной версии до другой

Nikita-Sysoev Автор вопроса
Roman Sergeev
А без скрипта вы планируете каким-то средством виз...

То есть проще ручками делать, чем писать скрипт?

Вы работаете с клиентскими данными. Ваша задача делать не проще, а лучше. Основными приоритетами должны быть сохранность данных и непрерывность предоставления сервисов, с ними связанных. Лучше написать тривиальный скрипт ручками. Если это пока вызывает сложности, то воспользуйтесь такой средой управления бд и схемами, которая умеет их генерировать. Изучите результат и превратите в свой скрипт. Визуальный дизайнер может вместо alter сделать drop + create. Для схемы разницы нет. Для данных - очень большая.

Roman Sergeev
Вы работаете с клиентскими данными. Ваша задача де...

Да, но добавление поля не вызывает drop+create. По крайне мере, SSMS. Подобное случается при изменении типа поля. И SSMS в этом случае создаёт временную таблицу, в которую переливает данные, а затем переименовывает, убивая старую таблицу.

Tim Safari
Да, но добавление поля не вызывает drop+create. По...

Если поле добавляется в конце то не вызывает.

Tim Safari
Да, но добавление поля не вызывает drop+create. По...

Вы же узнали это из результатов анализа скрипта, созданного ssms? Не с продом экспериментировали? Я знаю, что генерирует ssms - 13 лет с mssql работал. Но нам не было сказано ничего ни про базу, ни про средства управления. И все равно я это с mssql делал скриптами

Nikita-Sysoev Автор вопроса

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Ребят в СИ можно реализовать ООП?
Николай
33
у вас два процесса. один посылает другому сигнал. у вас есть код обоих процессов? если всё не так - расскажите как оно на самом деле. а именно кто кому чего, есть-ли консоли,...
Karagy
6
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Карта сайта