방법: 데이터베이스 변경 시 EDM 업데이트
ADO.NET 엔터티 데이터 모델 디자이너(Entity Designer)는 모델 업데이트 마법사를 사용하여 데이터베이스 변경 내용을 기반으로 EDM(엔터티 데이터 모델)을 업데이트합니다. 모델 업데이트 마법사는 데이터베이스 변경 내용을 기반으로 EDM을 업데이트할 때 저장소 모델을 덮어씁니다. 또한 모델 업데이트 마법사는 개념적 모델과 매핑을 일부 변경하지만, 개체가 데이터베이스에 추가된 경우에만 이러한 변경 작업을 수행합니다. 예를 들어, 데이터베이스에 테이블을 추가할 때 새 엔터티 형식이 모델에 추가되고, 테이블에 열을 추가할 때 새 속성이 엔터티 형식에 추가됩니다. EDM에서 변경되는 내용에 대한 자세한 내용은 모델 업데이트 마법사에 의한 EDM 변경 내용을 참조하십시오.
모델 업데이트 마법사는 다음을 수행합니다.
개체가 데이터베이스에서 삭제된 경우 마법사는 저장소 모델에서 해당 개체를 제거합니다. 개념적 모델의 개체가 더 이상 존재하지 않는 저장소 모델에 매핑되지 않도록 매핑 사양이 업데이트됩니다. 기존 개념적 모델 개체는 삭제되지 않습니다.
개체가 데이터베이스에 추가되었거나 이전 모델에 포함되지 않은 경우 해당 개체를 모델에 추가할 수 있습니다. 저장소 모델이 새로 추가한 개체로 업데이트됩니다. 테이블 또는 뷰의 경우(저장 프로시저 아님) 해당 엔터티 형식이 만들어져 개체에 매핑됩니다.
개체가 업데이트된 경우 마법사는 저장소 모델에서 개체 정의를 업데이트합니다. 새 열이 테이블 또는 뷰에 추가된 경우 해당 엔터티 형식이 일치하는 속성으로 업데이트됩니다. 해당 엔터티 형식이 상속 계층 구조의 일부인 경우 계층 구조의 루트에 가장 가까이 있는 영향을 받는 엔터티만 일치하는 속성으로 업데이트됩니다. 이렇게 하면 계층 구조의 자식 엔터티가 상위 항목과 동일한 속성을 정의할 수 없습니다.
데이터베이스 변경 시 EDM을 업데이트하려면
모델 브라우저에서 모델의 .edmx 파일을 마우스 오른쪽 단추로 클릭하고 데이터베이스에서 모델 업데이트를 선택합니다.
모델 업데이트 마법사가 시작됩니다. EDM에 데이터베이스 연결이 지정되어 있지 않으면 데이터베이스 연결 선택 대화 상자가 나타납니다. 그렇지 않으면 데이터베이스 개체 선택 대화 상자가 나타납니다.
데이터베이스 연결 선택 대화 상자가 나타나면 모델에 대해 데이터베이스 연결을 지정합니다. 그렇지 않으면 다음 단계로 이동합니다.
연결 지정에 대한 자세한 내용은 데이터 연결 선택 대화 상자를 참조하십시오. 연결을 지정한 경우 다음을 클릭하여 데이터베이스 개체 선택 대화 상자를 표시합니다.
추가 탭을 클릭합니다.
테이블, 뷰 및 저장 프로시저에 대한 노드가 표시됩니다. 개체가 데이터베이스에 추가되었거나 이전 모델에 포함되지 않은 경우 해당 노드를 확장하여 추가된 개체를 볼 수 있습니다.
테이블, 뷰 및 저장 프로시저 노드를 확장하고 EDM에 추가할 개체를 선택합니다.
새로 고침 탭을 클릭합니다.
기존 저장소 모델에 포함된 테이블, 뷰 및 저장 프로시저에 대한 노드가 표시됩니다. 이러한 데이터베이스 개체에 대한 모든 변경 내용이 업데이트된 저장소 모델에 반영됩니다. 테이블 또는 뷰에 열을 추가하면 개념적 모델이 변경됩니다.
삭제 탭을 클릭합니다.
테이블, 뷰 및 저장 프로시저에 대한 노드가 표시됩니다. 개체가 데이터베이스에서 삭제되었으며 이전 모델에 포함되어 있었던 경우 해당 노드를 확장할 수 있습니다. 이러한 노드의 개체는 업데이트된 모델에서 삭제됩니다.
마침을 클릭하여 데이터베이스 변경 내용으로 EDM을 업데이트합니다.
참고: |
---|
개념적 모델은 데이터베이스에 추가된 개체에 대해서만 업데이트됩니다. 개념적 모델에 대한 다른 모든 변경 작업은 수동으로 수행해야 합니다. 개념적 모델 업데이트에 대한 자세한 내용은 엔터티 데이터 모델 도구 작업 또는 Entity Framework Tasks을 참조하십시오. |
참고 항목
개념
ADO.NET 엔터티 데이터 모델 디자이너
모델 업데이트 마법사에 의한 EDM 변경 내용