Поделиться через


Изменения в модели EDM, внесенные мастером обновления моделей

Мастер обновления моделей позволяет обновить модель EDM после внесения изменений в основную базу данных. При использовании мастера обновления моделей для обновления модели EDM необходимо учитывать два важных фактора.

  • Мастер обновления моделей перезаписывает существующую модель хранения при обновлении модели EDM на основе изменений в базе данных. Это означает, что любые пользовательские изменения, внесенные в модель хранения, не будут отражены в обновленной модели.

  • Мастер обновления моделей вносит только аддитивные изменения в концептуальную модель и сопоставления. Это означает, что при добавлении нового объекта в базу данных мастер обновления моделей добавляет соответствующие сущности, ассоциации и сопоставления в концептуальную модель. Однако если объекты удалены из базы данных, мастер обновления моделей не удаляет соответствующие сущности или ассоциации из концептуальной модели (соответствующие сопоставления удаляются).

В следующей таблице приведены подробности о способах использования мастером обновления моделей концептуальной модели, когда в объект базы данных внесены изменения.

Объект базы данных Изменение объекта в базе данных Изменения, внесенные в модель EDM при ее обновлении из базы данных

Таблица или представление

Добавлено

Новый тип сущности EntityType, а также соответствующие ассоциации и сопоставления добавляются в концептуальную модель.

Удалено

Указывает, что таблица или представление удалены из модели хранения. Все сопоставления с таблицей удалены. Если таблица или представление имеет один или несколько столбцов, в которых хранятся ключи для связи по внешнему ключу, сопоставления для соответствующих ассоциаций удаляются.

Переименовано

Переименование таблицы или представления оказывает такое же влияние на концептуальную модель и сопоставления, как удаление таблицы или представления со старым именем и добавление таблицы или представления с новым именем.

Изменился первичный ключ

Если столбцы добавлены в первичный ключ таблицы или представления, ассоциации будут добавлены для любых внешних ключей, которые ссылаются на новый первичный ключ. Соответствующие новые ассоциации будут добавлены к концептуальной модели. Ранее существовавшие ассоциации более сопоставляться не будут.

Если столбец удален из первичного ключа, необходимо удалить назначение ключа соответствующего свойства сущности.

Если столбец удален из внешнего ключа, будет создана новая ассоциация между оставшимися свойствами элемента.

Если столбец, который присутствовал как свойство сущности, был добавлен к первичному ключу, свойство сущности должно быть преобразовано в ключ сущности. Сведения об изменении свойств см. в разделе Как создавать и изменять скалярные свойства.

Если добавленный столбец первичного ключа был ранее сопоставлен с ассоциацией (а не со свойством сущности), будет создано соответствующее новое свойство сущности.

Столбец

Добавлено

Соответствующие сущности обновляются с учетом согласованных свойств и сопоставлений. Если соответствующие типы являются частью иерархии наследования, только тип сущности EntityType, ближайший к корневому уровню иерархии и сопоставленный с затронутой таблицей, обновляется с учетом согласованных свойств. Это исключает возможность определения дочерними сущностями в иерархии таких же свойств, как у их предков.

Удалено

Сопоставления со столбцом удаляются.

Переименовано

Переименование столбца оказывает такое же влияние на концептуальную модель, как удаление столбца со старым именем и добавление столбца с новым именем.

Изменено определение

Концептуальная модель и сопоставления не изменяются. Может потребоваться обновить модель вручную, если изменился тип столбца, и поэтому соответствующий тип свойства сущности стал несовместимым. Сведения об изменении свойств см. в разделе Как создавать и изменять скалярные свойства.

Внешний ключ

Добавлено

Новая ассоциация и обязательные сопоставления добавляются к концептуальной модели, если присутствуют все необходимые типы сущностей.

Удалено

Концептуальная модель и сопоставления не изменяются.

Переименовано

Концептуальная модель и сопоставления не изменяются.

Хранимая процедура

Добавлено

Концептуальная модель и сопоставления не изменяются. Хранимая процедура может быть добавлена к концептуальной модели вручную как Function Import. Дополнительные сведения см. в разделе Как импортировать хранимую процедуру.

Удалено

Сопоставления с хранимой процедурой удалены. Если Function Import была сопоставлена с хранимой процедурой, то Function Import должна быть удалена или сопоставлена с другой хранимой процедурой. Если поведение типа сущности при вставке, обновлении или удалении было сопоставлено с хранимой процедурой, эти сопоставления будут удалены.

Переименовано

Сопоставления с хранимой процедурой для любой операции Function Import либо вставки, обновления или удаления типа сущности будут удалены. Это оказывает такое же влияние на концептуальную модель, как удаление хранимой процедуры со старым именем и добавление хранимой процедуры с новым именем. Для переименованной хранимой процедуры должна быть создана новая функция импорта или первоначальная функция импорта должна быть снова сопоставлена с переименованной хранимой процедурой.

Изменено определение

Если параметры добавлены или удалены из хранимой процедуры, все сопоставления с хранимой процедурой становятся недействительными. Если Function Import сопоставлена с хранимой процедурой, Function Import должна быть удалена и создана повторно. Если поведение типа сущности при вставке, обновлении или удалении было сопоставлено с хранимой процедурой, то, возможно, потребуется заново сопоставить поведение.

См. также

Задачи

Как обновлять модель EDM при изменениях базы данных

Другие ресурсы

Мастер обновления моделей
Задачи средств модели EDM