2008. 9. 13. 02:00ㆍStudy/Database
1. 뷰란 무엇인가?
뷰는 하나이상의 테이블로 이루어진 가상 테이블이다. 뷰를 정의하고 사용하는 이유는 다음과 같다.
1) 여러 테이블들로부터 동시에 온 데이터로 작업하기 위해 사용할 수 있다.
2) 가장 최근의 정보를 반영한다.
3) 개인 또는 그룹의 특별한 요구에 개인화 시킬 수 있다.
4) 데이터 무결서을 강화하는데 사용할 수 있다.
5) 보안이나 기밀성의 목적으로 사용할 수 있다.
2. 뷰의 해부
1) 데이터 뷰
단일 기반 테이블 또는 다중 기반 테이블들로부터 데이터를 검사하고 조작하기위해 사용한다.
- 단일 테이블 데이터 뷰
기반 테이블의 모든 필드를 사용할 수 있지만 보통은 선택된 필드만 사용한다. 수정가능하고 기반 테이블에 적용되지만 필드 명세와 업무 규칙이 데이터에 적용할 수 있는 수정의 종류를 결정한다.
- 다중 테이블 데이터 뷰
둘 이상의 테이블들을 사용하여 데이터 뷰를 정의한다. 테이블들이 서로 관계를 가져야 한다. 대부분의 데이터는 수정하능하고 뷰를 통해 기반 테이블에 적용된다. 필드 명세와 업무 규칙들은 데이터에 가할 수 있는 수정의 종류를 결정한다.
* 불필요한 모호성이나 혼동을 피하기 위해 데이터 뷰의 다이어그램을 그릴 때 뷰 기호 내에 주 키 지시자를 포함하지 않는다.
2) 집계 뷰
특정한 방법으로 특정 데이터의 집합을 집계해서 생성된 정보를 표시하기 위해 사용한다. 하나 이상의 기반 테이블을 사용해서 정의할 수 있고 데이터를 집계하는 기능을 가지 하나 이상의 계산된 필드들과 집계된 데이터를 그룹화하기 위한 하나 이상의 데이터 필드들을 포함할 수 있다.
3) 검증 뷰
데이터 무결성을 구현할 수 있다. 업무규칙이 특정 필드의 값 범위를 제한할 때, 검증 뷰로 쉽게 그 제약 조건을 강화할 수 있다. 검증 테이블과 의차이점은 검증 테이블은 자신의 데이터를 저장하는 반면, 검증 뷰는 기반 테이블로부터 데이터를 추출한다.
3. 뷰 결정 및 정의하기
1) 사용자 및 관리자와 작업하기
조직이 필요로 하는 뷰의 종류를 식별하기 위해 사용자 및 관리자의 대표 그룹과 같이 작업하게 된다.
면담을 수행하기 위해 설계 작업에 걸쳐서 만든 메모와 분석 작업 동안 취합한 보고서 샘플들을 검토한다. 면담시 뷰의 요구 사항을 식별하기 위해 다음의 요점들을 고려한다.
- 그 그룹과 함께 메모를 검토한다.
- 설계 작업의 앞 단계에서 수집한 데이터 입력, 보고서, 프리젠테이션 샘플들을 검토한다.
- 테이블들과 그것들이 나타내는 주제를 검사한다.
- 테이블 관계들을 분석한다.
- 업무 규칙들을 검토한다.
2) 뷰 정의하기
식별된 뷰들을 정의하기위해 필요한 테이블과 필드들을 식별하기 위해 관계 다이어그램을 검토한다.
- 적절한 곳에 계산된 필드 사용하기
테이블은 계산된 필드를 포함할 수 없지만 뷰를 유용하게 만드는 특성들 중 한가지로 계산된 필드를 포함할 수 있다. 설계 작업의 앞부분에서 계산된 필드 목록을 검토하고 사용 가능 여부를 판단한다.
- 데이터를 필터링하기 위한 기준 부과하기
표시하는 레코드들을 필터링하기 위해 뷰 내의 하나 이상의 필드들에 대해 기준을 부과할 수 있는데, 뷰의 유용한 특성 중 하나이다.
- 뷰를 기록하기 위해 뷰 명세서 사용하기
a) 이름
뷰의 이름을 정의하는 것이로 테이블 이름을 부여하기 위한 지침들로 테스트한다. 예외로는 뷰는 하나 이상의 테이블로 구성 되기 때문에 하나 이상의 주제를 나타 낼 수 있다.
b) 종류
데이터, 집계 또는 검증 뷰 중 어떤 것을 정의하는 지 나타낸다.
c) 기반 테이블
뷰의 기반 테이블들의 이름을 지정한다.
d) 계산된 필드 연산식
뷰에 포함시킨 계산된 필드들을 위한 연산식을 기록한다. 계산된 필드의 이름을 기록하면서, 필드 이름을 부여하기 위한 지침들로 테스트한다. 여기서의 예외는 한 가지 이상의 특성들을 나타낼 수 있다.
e) 필터
뷰가 표시할 레코드들을 필터링하근데 사용할 범주를 기록한다.
3) 각 뷰를 위한 문서 검토하기
- 뷰를 올바르게 정의했는지 확인한다.
- 계산된 필드들이 뷰를 위해 적당한지 확인한다.
- 필터들이 요구되는 레코드들을 추출하는지 확인한다.
- 무엇보다도, 각각의 뷰를 위한 뷰 다이어그램과 뷰 명세서를 가지고 있는지 확인한다.
--------------------------
출처 - 위 글은 byung8lim의 다음블로그 Blog.daum.net/byung8lim에서 가져온 것입니다.