5μ₯. κ΄κ³ λ°μ΄ν° λͺ¨λΈ
- κ΄κ³ λ°μ΄ν° λͺ¨λΈμ κ°λ
- κ΄κ³ λ°μ΄ν° λͺ¨λΈμ μ μ½
κ΄κ³ λ°μ΄ν° λͺ¨λΈμ κ°λ
- κ°λ μ ꡬ쑰λ₯Ό λ Όλ¦¬μ κ΅¬μ‘°λ‘ νννλ λ Όλ¦¬μ λ°μ΄ν° λͺ¨λΈ
- νλμ κ°μ²΄μ λν λ°μ΄ν°λ₯Ό νλμ 릴λ μ΄μ μ μ μ₯
- (κ΄κ³ λ°μ΄ν° λͺ¨λΈμ λ€μ€ κ° μμ± κ°μ§ μ μλ€.)
κ³ κ° λ¦΄λ μ΄μ μ μ°¨μλ 6, μΉ΄λλ리ν°λ 4
κ΄κ³ λ°μ΄ν° λͺ¨λΈμ κΈ°λ³Έ μ©μ΄
- 릴λ μ΄μ
(relation)
- 2μ°¨μ ν μ΄λΈ κ΅¬μ‘°λ‘ μ μ₯ν κ²
- νμΌ κ΄λ¦¬ μμ€ν κ΄μ μμ νμΌ(file)μ λμ
- μμ±(attribute)
- 릴λ μ΄μ μ μ΄ = μ νΈλ¦¬λ·°νΈ
- νμΌ κ΄λ¦¬ μμ€ν κ΄μ μμ νλ(field)μ λμ
- ν¬ν(tuple)
- 릴λ μ΄μ μ ν
- νμΌ κ΄λ¦¬ μμ€ν κ΄μ μμ λ μ½λ(record)μ λμ
- λλ©μΈ(domain)
- νλμ μμ±μ΄ κ°μ§ μ μλ λͺ¨λ κ°μ μ§ν©
- μμ± κ°μ μ λ ₯ λ° μμ ν λ μ ν©μ± νλ¨μ κΈ°μ€
- μμ±μ νΉμ±μ κ³ λ €ν μ μ, λ¬Έμ λ±μ λ°μ΄ν° νμ μΌλ‘ μ μ
- λ(null)
- μμ± κ° μμ§ λͺ¨λ₯΄κ±°λ ν΄λΉλλ κ° μμ
- μ°¨μ(degree)
- 1κ°μ 릴λ μ΄μ μμ μμ±μ μ 체 κ°μ = μ΄μ κ°μ
- μΉ΄λλ리ν°(cardinality)
- 1κ°μ 릴λ μ΄μ μμ ν¬νμ μ 체 κ°μ = νμ κ°μ
릴λ μ΄μ μ ꡬμ±
- 릴λ μ΄μ
μ€ν€λ§(λ³΄ν΅ DDLμΌλ‘ μμ± λ° μ€ν)
- 릴λ μ΄μ μ λ Όλ¦¬μ ꡬ쑰
- 릴λ μ΄μ μ μ΄λ¦κ³Ό 릴λ μ΄μ μ ν¬ν¨λ λͺ¨λ μμ± μ΄λ¦μΌλ‘ μ μ
- = 릴λ μ΄μ λ΄ν¬(relation intension)
- μ μ μΈ νΉμ§μ΄ μμ => ν λ² μ μλλ©΄ κ° μ λ³νμ§ μμ.
- 릴λ μ΄μ
μΈμ€ν΄μ€(λ³΄ν΅ DMLμΌλ‘ μμ± λ° μ€ν)
- μ΄λ ν μμ μ 릴λ μ΄μ μ μ‘΄μ¬νλ ν¬νλ€μ μ§ν©
- = 릴λ μ΄μ μΈμ°(relation extension)
- λμ μΈ νΉμ§ μμ => κ³μ λ³ν¨.
β» κ°μ²΄ - κ΄κ³ λͺ¨λΈ (κ°λ μ λ°μ΄ν° λͺ¨λΈ)μμ κ°μ²΄μ μ μλ κ°μ²΄ type, κ°μ²΄μ ν λΉλ κ°μ κ°μ²΄ instance
β» κ΄κ³ λ°μ΄ν° λͺ¨λΈ (λ Όλ¦¬μ λ°μ΄ν° λͺ¨λΈ)μμ 릴λ μ΄μ μ λ Όλ¦¬μ ꡬ쑰 schemaμ μ μ¬
λ°μ΄ν°λ² μ΄μ€μ κ΅¬μ± (μ¬λ¬ κ°μ 릴λ μ΄μ )
- λ°μ΄ν°λ² μ΄μ€ μ€ν€λ§ (Database schema)
- λ°μ΄ν°λ² μ΄μ€μ μ 체 ꡬ쑰
- λ°μ΄ν°λ² μ΄μ€λ₯Ό ꡬμ±νλ 릴λ μ΄μ μ€ν€λ§μ λͺ¨μ
- ex) νμ 릴λ μ΄μ + κ΅μ 릴λ μ΄μ + κ³Όλͺ© 릴λ μ΄μ => 1κ°μ νκ΅ λ°μ΄ν°λ² μ΄μ€
- λ°μ΄ν°λ² μ΄μ€ μΈμ€ν΄μ€ (Database instance)
- λ°μ΄ν°λ² μ΄μ€λ₯Ό ꡬμ±νλ 릴λ μ΄μ μΈμ€ν΄μ€λ€μ λͺ¨μ
릴λ μ΄μ μ νΉμ± (ν¬νμ νΉμ± + μμ±μ νΉμ±)
- ν¬νμ μ μΌμ±: νλμ 릴λ μ΄μ μλ λμΌν ν¬ν(ν)μ΄ μ‘΄μ¬ν μ μλ€. (ν¬νμ μ μΌμ± 보μ₯ μν΄ key μ‘΄μ¬)
- ν¬νμ 무μμ: νλμ 릴λ μ΄μ μμ ν¬ν μ¬μ΄μ μμλ 무μλ―Ένλ€. (λ΄μ©μ΄ μ€μ, μμΉλ μ€μνμ§ μμ)
- μμ±μ 무μμ: νλμ 릴λ μ΄μ μμ μμ± μ¬μ΄μ μμλ 무μλ―Ένλ€. (μμ±μ μ΄λ¦μ΄ μ€μ)
- μμ±μ μμμ±: μμ± κ°μΌλ‘ μμ κ°λ§ μ¬μ©ν μ μλ€. (μμ: λλ λΆν΄ν μ μλ μμ, λ€μ€ κ° κ°μ§ μ μλ€.)
- ex) νμ¬μμ΄λ©΄μ νμμΈ λ°μ΄ν°λ μ‘΄μ¬ν μ μλ€.
ν€(Key)
- 릴λ μ΄μ μμ ν¬νλ€μ μ μΌνκ² κ΅¬λ³νλ μμ± λλ μμ±λ€μ μ§ν© -> μ μ½ μ‘°κ±΄μ μν΄ μ‘΄μ¬, ν¬νμ μ μΌμ± 보μ₯
- ν€μ νΉμ±
- μ μΌμ±(uniqueness): νλμ 릴λ μ΄μ
μμ λͺ¨λ ν¬νμ μλ‘ λ€λ₯Έ ν€ κ°μ κ°μ ΈμΌ ν¨
-> keyλ‘ μ§μ λ μμ± κ°μ ν¬νλ§λ€ μλ‘ λ¬λΌμΌν¨
-> keyκ° κ°μ ν¬νμ μ‘΄μ¬ x - μ΅μμ±(minimality): κΌ νμν μ΅μνμ μμ±λ€λ‘λ§ ν€ κ΅¬μ±
- μ μΌμ±(uniqueness): νλμ 릴λ μ΄μ
μμ λͺ¨λ ν¬νμ μλ‘ λ€λ₯Έ ν€ κ°μ κ°μ ΈμΌ ν¨
- ν€μ μ’
λ₯
- μνΌν€ (super key)
- μ μΌμ± λ§μ‘±νλ μμ± λλ μμ±λ€μ μ§ν© (μ΅μμ±μ κ³ λ € X)
- ex) κ³ κ° λ¦΄λ μ΄μ μ μνΌν€: κ³ κ°μμ΄λ, (κ³ κ°μμ΄λ, κ³ κ°μ΄λ¦), (κ³ κ°μ΄λ¦, μ£Όμ) λ±
- (κ³ κ°μμ΄λ, κ³ κ°μ΄λ¦)μ μ μΌμ± 보μ₯νμ§λ§ μ΅μμ± λ§μ‘±νμ§ λͺ»ν΄μ νλ³΄ν€ λ μ μμ
- κ³ κ°μμ΄λ μμ±μ μ μΌνλκΉ κ³ κ°μμ΄λ μμ±λ§ λ€μ΄κ°λ©΄ μνΌν€ λ μ μμ
- νλ³΄ν€ (candidate key)
- μ μΌμ±, μ΅μμ± λ§μ‘±νλ μμ± λλ μμ±λ€μ μ§ν©
- ex) κ³ κ°μμ΄λ, (κ³ κ°μ΄λ¦, μ£Όμ) λ±
- (κ³ κ°μ΄λ¦, μ£Όμ)μμ κ³ κ°μ΄λ¦, μ£Όμ κ° νκ°μ©μ ν보ν€κ° λ μ μκ³ μμΌλ‘λ§ νλ³΄ν€ κ°λ₯
- κΈ°λ³Έν€ (primary key)
- νλ³΄ν€ μ€ κΈ°λ³Έμ μΌλ‘ μ¬μ© μν΄ μ νν ν€
- ex) κ³ κ°μμ΄λ
- λμ²΄ν€ (alternate key)
- κΈ°λ³Έν€λ‘ μ νλμ§ λͺ»ν ν보ν€
- ex) (κ³ κ°μ΄λ¦, μ£Όμ)
- μΈλν€ (foreign key)
- λ€λ₯Έ 릴λ μ΄μ μ κΈ°λ³Έν€λ₯Ό κ·Έλλ‘ μ°Έμ‘°νλ μμ± λλ μμ±λ€μ μ§ν©
- = μ΄λ€ 릴λ μ΄μ μ μμλ μμ± λλ μμ±μ μ§ν©μ΄ λ€λ₯Έ 릴λ μ΄μ μ κΈ°λ³Έν€κ° λλ κ²
- μ°Έμ‘°νλ 릴λ μ΄μ : μΈλν€λ₯Ό κ°μ§ 릴λ μ΄μ
- μ°Έμ‘°λλ 릴λ μ΄μ : μΈλν€κ° μ°Έμ‘°νλ κΈ°λ³Έν€λ₯Ό κ°μ§ 릴λ μ΄μ
- μνΌν€ (super key)
->->-> κ°μ 릴λ μ΄μ μ κΈ°λ³Έν€λ₯Ό μ°Έμ‘°νλ μΈλν€ μ μ: (4μ₯) κ΄κ³μ μ°Έμ¬ν κ°μ²΄ νμ μ μμ λ°λΌ μ΄νκ΄κ³, μΌνκ΄κ³, μνκ΄κ³λ‘ λλμλλ° μ΄ λ μν κ΄κ³
1. ν보 ν€ μ€μ κ°μ΄ μμ£Ό λ³κ²½λ μ μλ μμ± ν¬ν¨λ ν보 ν€λ κΈ°λ³Έν€λ‘ λΆμ ν©
2. nullκ° κ°μ§ μ μλ μμ±μ΄ ν¬ν¨λ ν보ν€λ κΈ°λ³Έν€λ‘ μ ννλ©΄ μ λ¨
3. λ¨μν ν보ν€λ₯Ό κΈ°λ³Έν€λ‘ μ€μ
κ΄κ³ λ°μ΄ν° λͺ¨λΈμ μ μ½
λ¬΄κ²°μ± μ μ½μ‘°κ±΄ (integrity constraint)
- λ°μ΄ν°μ 무결μ±μ 보μ₯νκ³ μΌκ΄λ μνλ‘ μ μ§νκΈ° μν κ·μΉ
- 무결μ±: λ°μ΄ν°μ κ²°ν¨μ΄ μλ μν, μ ννκ³ μ ν¨νκ² μ μ§νλ κ²
- κ°μ²΄ λ¬΄κ²°μ± μ μ½μ‘°κ±΄
- κΈ°λ³Έν€λ₯Ό ꡬμ±νλ λͺ¨λ μμ±μ λ κ°μ κ°μ§ μ μλ€. (λ κ° κ°μ§λ©΄ ν¬νμ μ μΌμ± νλ¨ λΆκ°λ₯νκΈ° λλ¬Έ)
- λ§μ½ κΈ°λ³Έν€λ‘ μ€μ λ μμ±μ λ κ° μ½μ νλ €λ μλ or μλ μλ κ°μ nullμΌλ‘ λ°κΎΈλ €λ μλ νλ©΄ DBMSκ° λ§μμ€
- μ°Έμ‘° λ¬΄κ²°μ± μ μ½μ‘°κ±΄
- μΈλν€λ μ°Έμ‘°ν μ μλ κ°μ κ°μ§ μ μλ€.
- κ·Έλ¬λ μΈλν€ μμ±μ΄ λ κ°μ κ°μ§λ€κ³ ν΄μ μ°Έμ‘° λ¬΄κ²°μ± μ μ½ μ‘°κ±΄μ μλ°ν κ²μ μλ.
'DB(Database) > Basic Concept' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[DB] λ°μ΄ν°λ² μ΄μ€ μ€κ³ (0) | 2021.11.04 |
---|---|
[DB] λ·°(VIEW) (0) | 2021.11.04 |
[DB] λ°μ΄ν° λͺ¨λΈλ§ (λ°μ΄ν°λ² μ΄μ€) (0) | 2021.04.17 |
[DB] λ°μ΄ν°λ² μ΄μ€ μμ€ν (0) | 2021.03.12 |
[DB] λ°μ΄ν°λ² μ΄μ€ κ΄λ¦¬ μμ€ν DBMS (0) | 2021.03.04 |