1. SQL - TCL
2. SQL - DCL
3. ν¨μ ( NULL μ²λ¦¬ ν¨μ, λ¨μΌ ν¨μ )
=================================================================================
1. TCL ( Transaction Control Language )
- νΈλμμ
μ μ΄ μΈμ΄.
- νΈλμμ
μ λ°μ΄ν°λ² μ΄μ€μ λ
Όλ¦¬μ μ°μ° λ¨μμ΄λ€.
- νΈλμμ
μ λμμ΄ λλ SQLλ¬Έμ UPDATE, INSERT, DELETE λ± λ°μ΄ν°λ₯Ό μμ νλ DMLλ¬Έμ΄λ€.
- νλμ νΈλμμ Όμλ νλ μ΄μμ SQLλ¬Έμ₯μ΄ ν¬ν¨λλ©° λΆν ν μ μλ μ΅μμ λ¨μμ΄λ€. μ¦ ALL OR NOTHING μ΄λ€.
- νΈλμμ
μ νΉμ§
1. μμμ± : νΈλμμ
μμ μ μλ μ°μ°λ€μ λͺ¨λ μ±κ³΅μ μΌλ‘ μ€νλλμ§ μλλ©΄ μ ν μ€νλμ§ μμ μνλ‘ λ¨μμλ€.
2. μΌκ΄μ± : νΈλμμ
μ΄ μ€νλκΈ° μ μ λ°μ΄ν°λ² μ΄μ€μ λ΄μ©μ΄ μλͺ»λμ΄ μμ§ μλ€λ©΄
νΈλμμ
μ΄νμλ λ΄μ©μ μλͺ»μ΄ μμΌλ©΄ μλλ€.
3. κ³ λ¦½μ± : νΈλμμ
μ΄ μ€νλλ λμ€μ λ€λ₯Έ νΈλμμ
μ μν₯μ λ°μ μλͺ»λ κ²°κ³Όλ₯Ό λ§λ€μ΄μλ μλλ€.
4. μ§μμ± : νΈλμμ
μ΄ μ±κ³΅μ μΌλ‘ μνλλ€λ©΄ κ·Έ νΈλμμ
μ΄ κ°±μ ν ν
μ΄λΈμ λ΄μ©μ μꡬμ μΌλ‘ μ μ₯λλ€.
- νΈλμμ
μ μ’
λ₯λ‘λ COMMIT, ROLLBACK, SAVEPOINTκ° μλ€.
1) COMMIT
- μ
λ ₯ν μλ£λ μμ ν μλ£μ λν΄μ λλ μμ ν μλ£μ λν΄μ μ ν λ¬Έμ κ° μλ€κ³ νλ¨λμμ κ²½μ°,
COMMIT λͺ
λ Ήμ΄λ₯Ό ν΅ν΄μ νΈλμμ
μ μλ£νλ€.
2) ROLLBACK
- COMMIT μ΄μ μλ λ³κ²½ μ¬νμ μ·¨μ ν μ μλλ°, μ΄ λ ROLLBACKμ΄λΌλ κΈ°λ₯μ μ¬μ©νλ€.
3) SAVEPOINT
- μ μ₯μ μ μ μνλ©΄ ROLLBACK λ‘€λ°±ν λ νΈλμμ
μ ν¬ν¨λ μ 체 μμ
μ λ‘€λ°±νλ κ²μ΄ μλ,
ν μ§μ μμ SAVEPOINTκΉμ§ νΈλμμ
μ μΌλΆλ§ λ‘€λ°±ν μ μλ€.
=================================================================================
2. DCL ( Data Control Language )
- λ°μ΄ν° μ μ΄ μΈμ΄
- λ°μ΄ν° λ² μ΄μ€μ κΆν λΆμ¬
- μ§μ λ°μ΄ν° λ² μ΄μ€μ ν
μ΄λΈμ μν₯μ λ―ΈμΉκΈ° λλ¬Έμ DCL λν Auto Commitμ΄λ€.
- DCLμ μ’
λ₯λ‘λ GRANT, REVOKEκ° μλ€.
1) GRANT : λ°μ΄ν°λ² μ΄μ€μ λν μ¬μ©μμ μμΈμ€ κΆνμ μ 곡
( νΉμ μ¬μ©μλ§ νΉμ μμ
μ ν μ μλλ‘ μ§μ κ°λ₯ )
2) REVOKE : GRANT λͺ
λ ΉμΌλ‘ μ£Όμ΄μ§ μ‘μΈμ€ κΆνμ μ² ν ( μ½κ²λ§ν΄, μ£Όκ³ λ€μ κ°μ Έκ°. )
- λ¬Έλ²
- GRANT
GRANT < κΆν1, κΆν2 .. > TO < κΆνμ λΆμ¬λ°μ κ³μ >; νΉμ
GRANT < κΆν1, κΆν2 .. > ON < κ°μ²΄λͺ
( ν
μ΄λΈλͺ
) > TO < κΆνμ λΆμ¬λ°μ κ³μ >;
- REVOKE
REVOKE < κΆν1, κΆν2 .. > FROM < κΆνμ λΊμ κ³μ >; νΉμ
REVOKE < κΆν1, κΆν2 .. > ON < κ°μ²΄λͺ
( ν
μ΄λΈλͺ
) > FROM < κΆνμ λΊμ κ³μ >;
2-1) λ‘€ ( ROLE )
- λ‘€ ( ROLE )μ΄λ μ¬μ©μμκ² νκ° ν μ μλ κΆνλ€μ μ§ν©μ΄λΌκ³ ν μ μλ€.
- λ¬Όλ‘ , λ‘€μ μ¬μ©νμ§ μκ³ μΌμΌμ΄ νλνλ κΆνμ κ³μ μ λΆμ¬ν΄λ μ’μΌλ,
λΆμ¬ν΄μΌ νλ κ³μ μ΄ νλκ°κ° μλλΌλ©΄?
- μ΄λ΄ λ κ³μ λ³λ‘ λΆμ¬λ°μμΌ ν κΆνμ νκ³³μ λͺ¨μλκ³ ( λ‘€ ) λΆμ¬νλ©΄ λλ€.
- ROLE λΆμ¬ μμ
ROLEμ μμ± : CREATE ROLE < λ‘€ μ΄λ¦ >;
ROLEμ κΆν λΆμ¬ : GRANT < κΆν1, κΆν2 .. > TO < κΆνμ λΆμ¬λ°μ λ‘€ >;
ROLEμ μ¬μ©μ λλ ROLEμκ² λΆμ¬ : GRANT < λΆμ¬ν κΆν > TO < λΆμ¬λ°μ κ³μ >;
':: DBMS π© > OracleDB' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[DBMS] SQL -7- [SELECT, COMMIT] (0) | 2021.03.22 |
---|---|
[DBMS] SQL -6- [SELECT] (0) | 2021.03.22 |
[DBMS] SQL -5- [INSERT, UPDATE, DELETE] (0) | 2021.03.22 |
[DBMS] SQL κ°λ -2- "E-Rλͺ¨λΈ, μ κ·ν, μνμ€ ( Sequence )" (0) | 2021.03.22 |
[DBMS] - 4 - SQL - DROP, TRUNCATE (0) | 2021.03.16 |
λκΈ