У меня было обсуждение с нашим администратором базы данных о том, как изменить схему базы данных. Его мнение состоит в том, что все изменения должны быть обратимыми. Например:назад совместимые базы данных изменения
- Устаревшие таблицы/столбцы не следует отбрасывать, как только они становятся излишними. Вместо этого они должны храниться как минимум для нескольких выпусков.
- Вместо того, чтобы переименовывать таблицу/столбец, создайте новую таблицу/столбец и скопируйте содержимое из старого в новый.
- Когда необходимо сохранить сохраненный proc/trigger с именем 'foo', оставьте исходную сохраненную процедуру/trigger на месте и создать новый хранимый proc/trigger с именем 'foo2'. Конечно, это означает, что все ссылки на хранимый proc/trigger необходимо обновить, чтобы ссылаться на новое имя
Преимущество этого подхода состоит в том, что база данных может быть переключена на предыдущую версию, если (например) выпуск выходит из строя, и нужно вернуться к предыдущей версии приложения. Это было бы невозможно, если бы таблицы и столбцы были просто удалены.
У меня есть свое мнение о мудрости этого подхода, но я буду держать их в покое, опасаясь смещения ответов. В случае, если это имеет какое-то значение, среда - это стартап, создающий приложение для социальной сети.
Я добавил данные по enviornment –