Schema Scope
릴레이션 스키마는 한 테이블, 데이터베이스 스키마는 전체 설계다
같은 스키마라도 범위가 다릅니다. 릴레이션 스키마는 테이블 하나의 구조, 데이터베이스 스키마는 여러 릴레이션과 제약 조건, 뷰 같은 전체 구조를 묶어 말합니다.
릴레이션 스키마
부분
students(student_id, name, department, grade)
범위
테이블 하나의 이름, 속성, 도메인, 키
질문
students는 어떤 열과 규칙으로 이루어졌나?
단위
CREATE TABLE 하나의 구조
데이터베이스 스키마
전체students(...)
학생 릴레이션 스키마courses(...)
과목 릴레이션 스키마enrollments(...)
수강 릴레이션 스키마cs_students view
조회용 가상 릴레이션
외래키
enrollments.student_id -> students.student_id
제약 조건
grade BETWEEN 1 AND 4
운영 객체
뷰, 인덱스, 권한까지 포함 가능
크기
릴레이션 스키마는 전체 설계의 한 조각
students(...) 하나는 데이터베이스 스키마의 구성 요소입니다.
초점
릴레이션 스키마는 컬럼과 제약을 본다
한 테이블 안에서 어떤 값이 허용되는지가 중심입니다.
연결
테이블 사이 연결은 제약 조건으로 표현
ER의 추상 관계가 아니라 SQL에서는 보통 외래키와 무결성
규칙입니다.