миграция данных после обновления дизайна - PullRequest
0 голосов
/ 26 января 2012

У меня есть простая модель данных сущностей, где у меня есть две сущности и отношение 1- * между ними.Для упрощения, скажем, Персона и Книга.(т. е. у людей 0 или более книг, а у книг должен быть владелец)

Система работает нормально и в ней есть данные.

Теперь мне нужно создать другие объекты, унаследованные от Person (т.е.Ученик, учитель)

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

Теперь мне нужно перенести старые данные (данные в Person, которые связаны скниги) По своим данным я знаю, кто из них ученик, а кто учитель, и у меня есть дополнительная информация об учениках и учителях, которую я добавлю в новую модель.

Вопрос в том, как перенести данные,Я не могу добавить учеников и учителей перед удалением экземпляра Person, потому что это создаст дубликат Id в Person.Я не могу удалить Человека, так как он создает ошибку.(«Оператор DELETE вступил в конфликт с ограничением REFERENCE»)

Как мне добиться этой миграции данных.

Спасибо

1 Ответ

0 голосов
/ 26 января 2012

Если у вас действительно отображено наследование, вы не должны удалять Person - Person имеет значение Student или Teacher, поэтому вам нужно просто добавить правильные столбцы (в случае TPH) или связанные таблицы (в случаеTPT) и использовать существующие данные без их изменения.

Эта миграция должна выполняться в SQL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...