자동 네비게이션 (Automatic Navigation)
수동 네비게이션 (Manual Navigation)
automatic navigation이란 relation system에서와 같이 navigation process가 사용자 요청을 만족하기 위해 저장된 데이터에 대해 자동적으로 수행된다는 것을 말하는 것이다.
system이 “how”에 대한 부분은 제공하지만 “what”에 대한 부분은 사용자가 지정을 해주어야 한다.
이와 반대로 manual navigation이란 nonrelation system에서와 같이 navigation process가 사용자가 명시된 모든 절차에 의해 이루어진다는 것이다. “what”뿐만 아니라 “how”에 대한 부분도 사용자가 지정해주어야 한다.
어떠한 relvar R2의 속성들의 value가 또 다른 relvar R1의 후보키들의 value와 match 되어야 할 때, 이를 foreign key라 부른다.
- 관계형 성질 중 닫힘 성질(closure property)는 임의의 연산에 대한 출력이 그 연산의 입력과 같은 종류의 객체임을 의미
- 관계형 데이터베이스에서, SELECT(RESTRICT), PROJECT, JOIN 연산의 결과는 또 하나의 테이블이다.
내부구조에 대한 정보가 없기 때문에 내부 구조의 정보에 의존한 처리요구를 수행할 수 없다.
보안이나 무결성 규칙을 지원할 수 없다. (0.5)
응용과 데이터의 dependency에 의한 문제가 발생한다.즉 데이터 독립성을 지원할 수 없다
① 데이터베이스의 개념 스키마를 정의
② 내부 스키마 정의
③ 사용자와의 연락
④ 보안 검사와 무결성 검사 정의
⑤ 변화하는 요구에 대한 적응과 성능 향상에 대한 감시
DEPT(DEPT#, DNAME, BUDGET)
EMP(EMP#, ENAME, DEPT#, SALARY)

카탈로그가 자술적(self-describing)이라는 의미는 카탈로그 안에 카탈로그 자신에 대한 정보도 포함됨을 의미함


Entitiy : 다른 객체들과 구별되는 실제 존재하는 개체
예를 들어, 특정한 사람, 회사, 이벤트, 식물 등이 엔터티의 예시
Attribute : 엔터티는 특성을 가지며, 이는 해당 엔터티를 구별하는 데 사용됩니다.
예를 들어, 사람 엔터티는 이름, 주소 등의 특성을 가질 수 있습니다
Relationship:여러 엔터티들 간의 연관성을 나타냄
Mapping Cardinality: 나의 엔터티가 다른 엔터티와 얼마나 많은 관계를 맺을 수 있는지를 나타냄
key
Super Key는 엔터티를 식별하는데 필요한 모든 속성의 조합입니다. Candidate Key는 그 중에서도 최소한의 속성으로 이루어진 키로, 각각의 엔터티를 고유하게 식별할 수 있습니다. Primary Key는 Candidate Key 중에서 선택되어 특정 엔터티를 식별하는 데 사용됩니다.

Rectangle : 엔터티 집합
Diamond: 관계 집합
Line: 속성(Attribute)과 엔터티 집합 또는 관계 집합을 연결
Ellipse: 속성을 나타냄
Double Ellipse : 다중값 속성(multivalued attribute)을 나타냄
Dashed Ellipse : 파생된 속성(derived attribute)을 나타냄

Total Participation (전체 참여):
이는 모든 엔터티가 관계에 참여해야 함을 의미합니다. 즉, 한 쪽 엔터티가 다른 쪽 엔터티와 연관이 있어야만 합니다.
이중선으로 나타냄
예를 들어, '대출' 관계에서는 모든 대출은 반드시 어떤 고객과 연결되어야 합니다. 대출은 반드시 고객과 관련이 있어야 합니다.
Partial Participation (부분 참여):이는 일부 엔터티만이 관계에 참여할 수 있음을 의미합니다. 다시 말해, 연관성이 없는 엔터티가 있을 수 있습니다.
예를 들어, '고객' 관계에서는 일부 고객이 대출을 받지 않을 수 있습니다. 일부 고객은 대출과 전혀 관련이 없을 수 있습니다.
Weak Entity Setprimary key를 가지고 있지 않은 엔터티 집합
Identifying Entity Set : 약한 엔터티 집합(Weak Entity Set)이 다른 엔터티 집합에 종속적일 때, 그 종속 관계를 식별해주는 엔터티 집합을 의미
예를 들어, "의자"라는 약한 엔터티 집합은 "방"이라는 엔터티 집합에 종속적입니다. 즉, 각 의자는 어떤 방에 속해야만 고유하게 식별될 수 있습니다. 이때 "방" 엔터티 집합이 identifying entity set이 되는 것
double diamond은 약한 엔터티 집합과 식별 엔터티 집합 간의 관계를 나타내며, 약한 엔터티 집합이 식별 엔터티 집합에 종속되어 있음을 시각적으로 표현
Discriminator :약한 엔터티 집합 내에서 각 엔터티를 고유하게 식별하는 데 필요한 정보
약한 엔터티 집합의 주 키는 강한 엔터티 집합의 주 키와 판별자의 조합으로 구성됨

weak entity는 이중 사각형
Primary key for payment – (loan_number, payment_number)
Indentifying entity set 의 primary key가 explicit 하게 저장되면, weak-entity set 을 strong entity set으로 만들 수 있다. 그런데 이때 identifying relation 의 attribute가 strong entity set의 attribute의 중복이 된다.
예제에서 loan_number가 payment에 저장되면 entity set payment schema에는 4개의 속성
(loan_number, payment_number, payment_date, payment_amount)가 저장되는데, 이때 loan_payment schema 에 저장된 단 두가지 속성인 (loan_number, payment_number)attribute가 중복된다.
관계들 간의 관계를 표현하기 위해 관계를 상위 개체로 취급하는 추상화 기법
“어떤 직원이 어떤 지사에서 수행한 일을 관리하는 관리자를 기록하고자 한다.”



S(S#, SNAME, STATUS, CITY),
P(P#, PNAME, COLOR, WEIGHT, CITY),
SP(S#, P#, QTY)
(가) Base relation과 뷰(view)의 차이점을 설명하고, 뷰에 대한 질의처리 과정을 설명하라.
뷰에 대한 질의처리 과정
1) 뷰의 정의 sql이 시스템 카탈로그에 저장된다.
2) 실제적 정의sql문에서 참조된 뷰명은 시스템에서 시스템 카탈로그에 저장된 정의로 치환된다.
3) 최적화 과정을 거쳐서 변환한다.
(나) Embedded SQL 문이 포함된 응용 프로그램에서 프로그램 중간에 ‘EXEC SQL FETCH X…’와 같은 문장이 있다면, 이 문장이 나타나기 전에 반드시 먼저 나타나야 하는 Embedded SQL 명령문들을 설명하라
