Constraints
컬λΌμ Constraints (μ μ½μ‘°κ±΄) μ£ΌκΈ°
컬λΌλ§λ€ λ μ μ½μ‘°κ±΄μ κ±Έμ΄λ μ μμ΅λλ€.
- μ΄ μ»¬λΌμ NOT NULL ν΄μΌνλ€ (ν λΉ λ°μ΄ν° μ§μ΄λ£μ§ λ§μλΌ)
- μ΄ μ»¬λΌμ μλ λ°μ΄ν°λ€μ νμ UNIQUE ν΄μΌνλ€
- μ¬κΈ°μ μμλ§κ³ μμλ§ λ€μ΄μ€λμ§ CHECK νλΌ
- μ΄ μ»¬λΌμ PRIMARY KEYλ‘ μ€μ νλΌ
λ± μ¬λ¬κ°μ§ μ€μ μ΄ κ°λ₯ν©λλ€.
1. NOT NULL μ μ½μ‘°κ±΄
CREATE TABLE new_table3 (
id NUMBER(38,0) NOT NULL,
μ΄λ¦ VARCHAR(100) NOT NULL,
λμ΄ NUMBER(38,0)
) μ»¬λΌ λ§λ€ λ μ°μΈ‘μ NOT NULLμ 체ν¬ν΄μ£Όλ©΄ NULL κΈμ§λΌλ μ μ½μ κ±Έ μ μμ΅λλ€.
μλ λ°μ΄ν°λ£μ λ κΉλ¨Ήκ³ μλ£μΌλ©΄ μλμΌλ‘ NULLμ΄ λ©λλ€.
κ·Έλμ NOT NULL μ λ ₯ν΄λλ©΄ λμ€μ μ΄λ¦μ»¬λΌμ΄λ id컬λΌμ κΉλ¨Ήκ³ λ°μ΄ν°λ₯Ό μλ£μΌλ©΄ μ μ₯μ΄ λμ§ μμ΅λλ€.
2. UNIQUE μ μ½μ‘°κ±΄
μ»¬λΌ λ§λ€ λ μ°μΈ‘μ UNIQUE λ₯Ό 체ν¬ν΄μ£Όλ©΄ UNIQUE λΌλ μ μ½μ κ±Έ μ μμ΅λλ€.
UNIQUEκ° λΆμ΄μλ 컬λΌμμμ λͺ¨λ νμ΄ κ°κ° λ€λ₯Έ λ°μ΄ν°λ₯Ό κ°μ§κ³ μμ΄μΌν©λλ€.
κ·Έλμ λ€λ₯Έ νμ μλ κ°μ μ μ₯νλ €κ³ νλ©΄ μ μ₯μ΄ μλ©λλ€.
μ§μ§μΈμ§ ν μ€νΈν΄λ΄ μλ€.
νΉμ μ΅νλ¨μ UNIQUE(컬λΌ1, 컬λΌ2 ...) μ΄λ κ² λ£μ΄λ λ©λλ€.
κ·Όλ° μ΄λ κ² 2κ° μ΄μμ 컬λΌμ λ£κ²λ κ²½μ° μ»¬λΌ1κ³Ό 컬λΌ2 κ°μ΄ μ λΆ κ°μμΌ μ μ₯μ λ§μμ€λλ€.
1
aaa
20
2
aaa
21
μ΄κ±΄ μ μ₯μ νμ©ν΄μ£Όλλ°
1
aaa
20
2
aaa
20
μ΄κ±΄ μ μ₯μ΄ μλ©λλ€.
3. CHECK() μ μ½μ‘°κ±΄
컬λΌλ§λ€ λ μ°μΈ‘μ CHECK () λ£μΌλ©΄ 컬λΌμ λ€μ΄κ° κ°μ μ μ½μ λ μ μμ΅λλ€.
λ±νΈ λΆλ±νΈ AND OR μ¨μ 쑰건μμ²λΌ μ λ ₯νλ©΄ λ©λλ€. IN μ°μ°μλ κ°λ₯ν©λλ€.
κ·Έλ μ μμ²λΌ ν΄λμΌλ©΄ μ΄μ 'λμ΄' 컬λΌμ μμ λͺ»λ£μ
4. PRIMARY KEY μ μ½μ‘°κ±΄
row νλ μ μ₯ν λ λ§λ€ idκ°μκ±Έ κΈ°λ‘ν΄λ¬μΌ λμ€μ νΈλ¦¬ν©λλ€.
νμμ΄λ¦
νλ
λ°
κΉμ² μ
1
2
κΉμν¬
1
2
μ΄μμ°
2
3
μλ₯Ό λ€μ΄ DBμ νμ μΆμλΆλ₯Ό μ μ₯νλ €λ©΄ νμμ μ΄λ¦ νλ λ°λ§ μ μ₯νλ€κ³ κ°μ ν΄λ΄ μλ€.
2νλ 3λ°μ μ΄μμ° νμμ΄ λ μ ννλ©΄ μ΄λ»κ² λμ ꡬλΆν κΉμ???
κ·Έλμ νμλ§λ€ μ λν¬ν λ²νΈλ₯Ό λ¬μλμΌ μ’μ§ μμκΉμ.
νλ²
νμμ΄λ¦
νλ
λ°
1
κΉμ² μ
1
2
2
κΉμν¬
1
2
3
μ΄μμ°
2
3
4
μ΄μμ°
2
3
κ° νμλ§λ€ μ λν¬ν νλ²μ λΆμ¬νλ©΄ λμ€μ λμΌν μ΄λ¦μ λ°μ΄ν°κ° λ€μ΄μλ κ°κ° ꡬλΆμ§κΈ°κ° κ°λ₯ν©λλ€.
μ¬κΈ°μ 'νλ²' 컬λΌμ primary key λΌκ³ λΆλ¦ λλ€.
primary keyλ κ° νμ ꡬλΆμ§κΈ° μν΄ κ°κ° μ λν¬ν λ°μ΄ν°λ₯Ό λ΄κ³ μλ 컬λΌμ λλ€.
- λ¬Έμ λ£μ΄λ λλλ° λ³΄ν΅μ 1μ© μ¦κ°νλ μ«μλ₯Ό μ£Όλ‘ λ£μ΅λλ€.
- μμ μμΌλ©΄ μμ΄λ μκ΄μλλ° λ³΄ν΅μ ν μ΄λΈλ§λ€ λ§λ€μ΄λλκ² μ’μ΅λλ€.
- μ¬λ¬ 컬λΌμ λ¬Άμ΄μ primary keyλ‘ μ§μ μ΄ κ°λ₯ν©λλ€. μ¬λ¬ μ»¬λΌ λ¬Άμ κ²°κ³Όκ° κ° νλ§λ€ μ λν¬νκΈ°λ§ νλ©΄ λ©λλ€.
컬λΌλ§λ€ λ μ°μΈ‘μ PRIMARY KEY λΌκ³ νκΈ°νλ©΄ κ·Έ 컬λΌμ PRIMARY KEY λ‘ λ±λ‘ν΄λ μ μμ΅λλ€.
κ·ΈλΌ NOT NULL, UNIQUE μ μ½μ‘°κ±΄λ μλμΌλ‘ λΆμ¬λ©λλ€.
5. 컬λΌκ° μλ μ¦κ°
λ£μ΄λλ©΄ ν μ΄λΈμ νμ΄ μΆκ°λ λ μλμΌλ‘ μμμ 1μ© μ¦κ°λ κ°μ΄ λΆμ¬λ©λλ€.
(μμ) ν μ΄λΈμ λ§μ§λ§ νμ idκ° 100μΌλ‘ κΈ°λ‘λμ΄μμλ€λ©΄
μλ‘ νμ μΆκ°νλ©΄ μμμ idλ₯Ό 101λ‘ μ€μ ν΄μ€λλ€.
- PRIMARY KEY 쑰건 λ£μ λ μμ£Ό ν¨κ» μ¬μ©λ©λλ€.
6. CONSTRAINTS() λ¬Έλ²μΌλ‘ μ μ½μ‘°κ±΄μ£ΌκΈ°
μ μ½μ‘°κ±΄ μ€ λ λ°μ μ΄λ κ² μ¨λ λ©λλ€.
μ μ½μ‘°κ±΄λ§λ€ μλͺ μ ν΄μ κ·μ½κ² μ΄λ¦λΆμ¬μ£Όκ³ μΆμΌλ©΄ CONSTRAINT λ¬Έλ²μ μλλ€.
μ΄λ κ² ν΄λλ©΄ λμ€μ μλ¬κ° λ λ "μ μ½μ‘°κ±΄λͺ 2 λλ¬Έμ μλ¬κ° λ©λλ€" μ΄λ° μμΌλ‘ νκΈ°κ° λλ―λ‘
SQL μ½λκ° λμνμ§ μμ λ λ²κ·Έμ°Ύλ κ³Όμ μ΄ μ’ λ νΈλ¦¬ν μ μμ΅λλ€.
7. μ μ½μ‘°κ±΄ μΆκ°
8. μ μ½μ‘°κ±΄ μμ

μμ±ν μ μ½μ‘°κ±΄μ Constraints νμμ νμΈν μ μλ€.
Last updated