데이터베이스(8)
-
7. Conversion to Relations
From Entity Sets to Relations 엔티티 세트를 릴레이션으로 변경할 때는 관계는 신경쓰지 않고 변경함 Stars(name, address) Movies(title, year, length, genre) Studios(name, address) From E/R Relationships to Relations 관계 세트를 릴레이션으로 변경할 때는 관계를 맺은 두 엔티티 세트의 키를 어트리뷰트로 새로운 릴레이션을 만듦. name을 starName과 studioName으로 변경한 이유는 명확성을 위해서임. StarsIn(starName, title, year) Owns(title, year, studioName) 관계가 다대일인 경우에는 '다'에 해당하는 릴레이션에 '일'의 키를 외래 키 컬..
2021.05.02 -
6-4. Weak Entity Sets
What is Weak Entity?Crews와 Studios는 다대일 관계이다. 그리고 Crews의 키는 number 하나이다. Studios가 하나일 때는 Crews의 number로 접근할 수 있지만 Studios가 늘어나 3개로 확장됐을 때는 number로만 찾을 수 없다. 따라서 각 Studio의 name과 Crews의 number를 함께 사용하여 찾아야 하는데 이렇게 관계를 맺은 엔티티 세트에 의존적인 엔티티를 약한 개체(Weak Entity)라고 한다.두 개의 사각형으로 표현하고 관계는 두 개의 마름모로 표현한다. 위와 같은 경우도 각 엔티티 세트는 Contracts라는 관계로 연결되어 있는데 salary만으로는 알맞은 데이터를 찾지 못하므로 위와같이 약한 개체로 만들고 그 관계를 이어준다.R..
2021.05.02 -
6-3. 제약조건
일반적으로 사용되는 제약 조건 명세KeySingle-value Referential integrityDomainGeneral1. Key엔티티 세트 E의 키는 하나 또는 그 이상의 속성 K이다해당 속성은 엔티티 세트 내의 엔티티 e1, e2 그 이상의 엔티티들에서 중복되면 안 된다E/R 모델에서 키의 표현은 속성에 밑줄을 쳐서 표현한다한 엔티티 세트에서는 여러 키가 존재할 수 있는데 이때 키 하나를 primary key로 지정할 수 있다primary key는 null이 될 수 없음2. Single-value여러 개의 값을 저장하지 못하고 없거나 최대 하나의 값만 저장할 수 있는 제약 조건확장된 E/R 모델이 아닌 경우에는 이를 전제로 하고 있음3. Referential Integrity참조 무결성어떤 릴레..
2021.05.02 -
6-2. 디자인 원칙
좋은 디자인으로 여겨지는 것과 피해야하는 것FaithfulnessAvoiding redundancySimplicity countsChoosing the right relationshipsPicking the right kind of elementFaithfulness디자인은 사실에 충실해야 한다엔티티 세트와 그 속성들, 관계 세트는 실제를 반영해야 한다Example(attributes)Automobiles(number-of-cylinders)Exmaple(relationship set - obvious case)Example(relationship set - less obvious case)Avoiding Redundancy중복을 피하자아래 E/R 모델을 보면 Studios의 name을 참조하여 데이터를..
2021.05.02 -
6-1. E/R 모델
데이터베이스 설계 과정 데이터베이스에 어떤 정보를 저장할지 분석 해당 정보의 구성요소 간의 관계 분석 데이터베이스 스키마 라고 불리는 데이터베이스의 구조 명세 설계는 DBMS에 입력될 수 있는 양식(SQL)에 맞춰 커밋됨 데이터베이스가 물리적으로 생성됨 고수준 설계 모델 E/R 모델 UML 모델 ODL 모델 데이터베이스 모델링 및 시행 과정 문제 분석 E/R 모델 산출 관계 스키마 생성 관계 DBMS 생성 E/R(Entity-Relationship) 모델 Entity: 사각형 다른 객체와 구별 가능한 형태의 실세계 객체 속성의 집합으로 표현됨 Entity Sets: 같은 속성을 공유하는 같은 타입의 엔티티 집합 Attributes: 타원 Entity set의 각 멤버가 보유한 설명 속성 표준 E/R 모델..
2021.05.02 -
5. Bags and Extended Relational Algebra
Relational Operations on Bags Set: 중복된 튜플을 제거한 릴레이션 Bag(Multiset): 중복된 튜플을 포함할 수 있는 릴레이션 Bag을 사용하는 이유 효율성(속도) Set으로 합집합 연산을 하게 되면 두 릴레이션을 합한 후 일일이 중복을 찾아내 제거하는 연산을 하게 됨 Bag으로 합집합 연산을 하게 되면 두 릴레이션을 합한 후 연산이 종료되므로 속도가 훨씬 빠름 Bag 연산으로 두 릴레이션을 합집합하면 중복되는 튜플이 사라지지 않고 합해지므로 결과가 달라질 수 있음(합계, 평균, 카운트 등) 프로젝션 연산은 중복된 컬럼을 제거하지만 Bag연산으로 하면 중복을 포함함 즉 각 튜플마다 독립적으로 수행됨(셀렉션도 마찬가지) Extended Operators to Relation..
2021.05.02