0

Я использую 3-уровневую систему выпуска; альфа, бета и финал. Я использую первый подход базы данных EF6 для обновления моей модели базы данных каждый раз, когда я делаю изменения. В каждом выпуске используется одна и та же база данных, поэтому бета-сайт использует те же данные, что и окончательная версия.Можно ли переименовать таблицу, не нарушая окончательный выпуск?

Если я хочу переименовать таблицу (и связанную модель объекта) в моей существующей базе данных, как бы я разрешил существующей окончательной версии продолжать работать как обычно (указывая на имя старой таблицы), а бета-версия указывать к имени новой таблицы?

+1

«Каждый выпуск использует ту же базу данных, поэтому бета-сайт, используя одни и те же данные, что и окончательный релиз» - может быть, вы должны прекратить делать это? – Colin

+0

Я ценю комментарий @Colin, но мой вопрос не был «должен ли я это делать?». Наши бета-пользователи будут нашими партнерами по продажам/маркетингу и были хорошо осведомлены о последствиях использования бета-сайта с живыми данными. – Connell

+0

Я не думал об этой проблеме с точки зрения пользователей. Ваша проблема заключается в том, что вы хотите обновить свою модель базы данных, но из-за вашей системы выпуска вы хотите сделать это, не меняя модель базы данных. – Colin

ответ

2

Создание представления в вашем Datatabase:

CREATE VIEW [OldTableName] AS SELECT * FROM [NewTableName]; 
+0

Сохранена ли здесь вся функциональность? Вставка и обновление тоже? И не так уж важно - будет ли эффект производительности вообще? – Connell

+1

Простые виды (например, select * from xy) являются обновляемыми, и я не думаю, что есть заметное влияние на производительность. – doerig

+0

Подробности: http://technet.microsoft.com/en-us/library/ms187956.aspx («Обновляемые виды») – doerig

Смежные вопросы