▶ 스키마 (Schema)
→ DB의 구조와 제약 조건에 관한 전반적인 명세를 정의한 메타데이터의 집합
☞ DB를 구성하는 데이터 개체(Entity), 속성(Attribute), 관계(Relationship) 및 데이터 조작 시 데이터 값들이 갖는 제약 조건 등에 관해 전반적으로 정의
메타 데이터 (Meta Data) : 일반적으로 데이터에 관한 구조화된 데이터
- 스키마의 특징
- 스키마는 데이터 사전(Data Dictionary)에 저장
- 현실 세계의 특정한 한 부분의 표현으로서 특정 데이터 모델을 이용해 생성
- 시간에 따라 불변인 특성
- 스키마는 데이터의 구조적 특성을 의미하며, 인스턴스에 의해 규정
데이터 사전 (Data Dictionary) : 데이터 항목들에 대한 정보를 지정한 중앙 저장소 (테이블 및 뷰들의 집합)
- 스키마의 3계층
1. 외부 스키마 (External Schema) = 사용자 뷰(View)
- 개별 사용자들의 입장에서 데이터 베이스의 논리적 구조를 정의
- 같은 데이터베이스에 대해서도 서로 다른 관점을 정의할 수 있도록 허용
- 전체 데이터베이스의 한 논리적인 부분, 서브 스키마(Sub Schema)라고도 함
- 하나의 DB 시스템에는 여러개의 외부 스키마가 존재할 수 있으며 하나의 외부 스키마를 여러개의 응용 프로그램이나 사용자가 공용 가능
- 일반 사용자는 질의어(SQL), 응용 프로그래머는 C, JAVA등의 언어를 사용하여 DB에 접근
2. 개념 스키마(Conceptual Schema) = 전체적인 뷰(View)
- DB의 전체적인 논리적 구조, 모든 응용 프로그램이나 사용자들이 필요로 하는 데이터를 종합한 조직 전체의 DB로 하나만 존재
- 개체간의 관계와 제약 조건을 나타내고 데이터베이스의 접근 권한, 보안 및 무결성 규칙에 관한 명세를 정의
- 각 DB 파일에 저장되는 데이터의 형태를 나타내는 것, 단순히 스키마(Schema)라고 하면 개념 스키마를 의미
- 기관이나 조직체의 관점에서 데이터베이스를 정의
무결성 제약 조건 : 데이터베이스의 정확성, 일관성을 보장하기 위해 저장, 삭제, 수정 등을 제약하기 위한 조건
3. 내부 스키마(Internal Schema) = 저장 스키마(Storage Schema)
- 내부 스키마는 물리적 저장장치의 입장에서 본 데이터베이스 구조 (물리적인 저장장치와 밀접한 계층)
- 실제로 데이터베이스에 저장될 레코드의 물리적인 구조를 정의
- 저장 데이터 항목의 표현방법, 내부 레코드의 물리적 순서 등을 나타냄
- 시스템 프로그래머나 시스템 설계자가 보는 관점의 스키마
'코딩 공부 > web & Java' 카테고리의 다른 글
[JAVA] 변수관련 (0) | 2022.09.05 |
---|---|
데이터 베이스 설계 (0) | 2022.09.02 |
JOIN문, JOIN 종류 (0) | 2022.09.02 |
SELECT문 조건 연산자와 SQL 변수 선언 (0) | 2022.09.01 |
SQL 함수와 데이터 타입 (0) | 2022.09.01 |