Сообщение Re[3]: ci/cd баз данных от 02.03.2024 19:26
Изменено 02.03.2024 19:29 bnk
Re[3]: ci/cd баз данных
Здравствуйте, Qulac, Вы писали:
Q>>>Может кто знает, хорошие ресурсы, курсы по этому делу. Буду очень благодарен за ссылки.
Б>>Зависит от того, что понимаешь под "ci/cd баз данных"
Q>Ну в крадце например: я открыл в vs проект базы данных slq server, что то там сделал, сделал пуш, а на выходе если все прошло удачно получаются два mof-файла один для нового инстанса, другой для обновления. Естественно это все с какими ни будь там тестами. Примерно так. Проблема в том, что я сам точно не знаю, как это должно быть.
Понятнее не стало. Ты про миграцию базы данных что ли (обновление схемы, данных)?
Обычно для этого есть отдельные инструменты, в зависимости от приложения. Т.е. то как обновлять, определяется приложением.
Разработчик пишет скрипты обновления базы вместе с новой версией приложения. Он же пишет тесты.
Практические в любом ORM такое есть.
Такой подход гораздо лучше чем слепое вычисление разницы в структуре и потом ее применение (без понимая сути изменений),
т.к. обеспечивает миграцию существующих данных в новую структуру.
Например, добавляешь ты новое поле. Понятно что добавить его можно автоматическим вычислением разницы.
А во значение в это поле далеко не факт какое нужно прописать, тут все зависит от прилжоения.
И это простейшая миграция.
Q>>>Может кто знает, хорошие ресурсы, курсы по этому делу. Буду очень благодарен за ссылки.
Б>>Зависит от того, что понимаешь под "ci/cd баз данных"
Q>Ну в крадце например: я открыл в vs проект базы данных slq server, что то там сделал, сделал пуш, а на выходе если все прошло удачно получаются два mof-файла один для нового инстанса, другой для обновления. Естественно это все с какими ни будь там тестами. Примерно так. Проблема в том, что я сам точно не знаю, как это должно быть.
Понятнее не стало. Ты про миграцию базы данных что ли (обновление схемы, данных)?
Обычно для этого есть отдельные инструменты, в зависимости от приложения. Т.е. то как обновлять, определяется приложением.
Разработчик пишет скрипты обновления базы вместе с новой версией приложения. Он же пишет тесты.
Практические в любом ORM такое есть.
Такой подход гораздо лучше чем слепое вычисление разницы в структуре и потом ее применение (без понимая сути изменений),
т.к. обеспечивает миграцию существующих данных в новую структуру.
Например, добавляешь ты новое поле. Понятно что добавить его можно автоматическим вычислением разницы.
А во значение в это поле далеко не факт какое нужно прописать, тут все зависит от прилжоения.
И это простейшая миграция.
Re[3]: ci/cd баз данных
Здравствуйте, Qulac, Вы писали:
Q>>>Может кто знает, хорошие ресурсы, курсы по этому делу. Буду очень благодарен за ссылки.
Б>>Зависит от того, что понимаешь под "ci/cd баз данных"
Q>Ну в крадце например: я открыл в vs проект базы данных slq server, что то там сделал, сделал пуш, а на выходе если все прошло удачно получаются два mof-файла один для нового инстанса, другой для обновления. Естественно это все с какими ни будь там тестами. Примерно так. Проблема в том, что я сам точно не знаю, как это должно быть.
Понятнее не стало. Ты про миграцию базы данных что ли (обновление схемы, данных)?
Обычно для этого есть отдельные инструменты, в зависимости от приложения. Т.е. то как обновлять, определяется приложением.
Разработчик пишет скрипты обновления базы вместе с новой версией приложения. Он же пишет тесты.
Практические в любом ORM такое есть, или можно добавть как библиотеку. См. EntityFramework, FluentMigrator, DbUp, да куча их.
Такой подход гораздо лучше чем слепое вычисление разницы в структуре и потом ее применение (без понимая сути изменений),
т.к. обеспечивает миграцию существующих данных в новую структуру.
Например, добавляешь ты новое поле. Понятно что добавить его можно автоматическим вычислением разницы.
А во значение в это поле далеко не факт какое нужно прописать, тут все зависит от прилжоения.
И это простейшая миграция.
Q>>>Может кто знает, хорошие ресурсы, курсы по этому делу. Буду очень благодарен за ссылки.
Б>>Зависит от того, что понимаешь под "ci/cd баз данных"
Q>Ну в крадце например: я открыл в vs проект базы данных slq server, что то там сделал, сделал пуш, а на выходе если все прошло удачно получаются два mof-файла один для нового инстанса, другой для обновления. Естественно это все с какими ни будь там тестами. Примерно так. Проблема в том, что я сам точно не знаю, как это должно быть.
Понятнее не стало. Ты про миграцию базы данных что ли (обновление схемы, данных)?
Обычно для этого есть отдельные инструменты, в зависимости от приложения. Т.е. то как обновлять, определяется приложением.
Разработчик пишет скрипты обновления базы вместе с новой версией приложения. Он же пишет тесты.
Практические в любом ORM такое есть, или можно добавть как библиотеку. См. EntityFramework, FluentMigrator, DbUp, да куча их.
Такой подход гораздо лучше чем слепое вычисление разницы в структуре и потом ее применение (без понимая сути изменений),
т.к. обеспечивает миграцию существующих данных в новую структуру.
Например, добавляешь ты новое поле. Понятно что добавить его можно автоматическим вычислением разницы.
А во значение в это поле далеко не факт какое нужно прописать, тут все зависит от прилжоения.
И это простейшая миграция.