Как вы вносите структурные изменения в базы данных SQL Server Azure, если у вас нет доступа через SSMS?

#sql-server #azure

Вопрос:

Нам больше не разрешается иметь доступ к средам UAT/PROD через SSMS в моей организации. То, как работает наш процесс развертывания, связано с толчками git. Поэтому, когда вы переходите в ветвь разработки, веб-код и база данных РАЗРАБОТЧИКА обновляются, аналогично при переходе в ветвь контроля качества и ветвь UAT.

Проблема в том, что при структурном изменении базы данных очень часто развертывание завершается ошибкой data loss may occur . В прошлом, при использовании решений on-prem, когда мы публиковали базу данных, если мы сталкивались с data loss may occur ошибкой, мы могли снять флажок Block incremental deployment if data loss might occur , и развертывание работало бы. Мы также никогда не теряли никаких данных. Поскольку эта опция больше недоступна, было предложено использовать сценарии до и после развертывания.

Является ли это стандартным способом внесения структурных изменений в облачную среду?

Если эти сценарии-путь вперед, то есть некоторые вещи, в которых я не уверен.

Как azure узнает, какой сценарий является сценарием до развертывания или сценарием после развертывания?

Должен ли сценарий быть удален и создан заново только с новыми изменениями, или вы используете IF EXISTS проверки и просто продолжаете добавлять в сценарий по мере развертывания?