2-3-4. DCL
Last updated
Was this helpful?
Last updated
Was this helpful?
μ§κΈκΉμ§ μ΄ν΄λ³Έ SQL λ¬Έμ₯μ λΆλ₯νλ©΄ ν μ΄λΈ μμ±κ³Ό μ‘°μμ κ΄λ ¨λ λͺ λ Ήμ΄(DDL)μ, λ°μ΄ν°λ₯Ό μ‘°μνκΈ° μν λͺ λ Ήμ΄(DML), κ·Έλ¦¬κ³ TRANSACTIONμ μ μ΄νκΈ° μν λͺ λ Ήμ΄(TCL)μ΄λ€. μΆκ°λ‘, μ΄λ° λͺ λ Ήμ΄λ€ μ΄μΈμλ μ μ λ₯Ό μμ±νκ³ κΆνμ μ μ΄ν μ μλ DCL(DATA CONTROL LANGUAGE) λͺ λ Ήμ΄κ° μλ€.
λ€λ₯Έ λΆμ κ°μ λλ λ€λ₯Έ νμ¬ κ°μ λ°μ΄ν°λ₯Ό 곡μ νκΈ° μν΄ λ°μ΄ν°λ² μ΄μ€λ₯Ό μ€νν΄μΌ νλ κ²½μ°κ° κ°λ λ°μνλ€. λ¬Όλ‘ λ°μ΄ν°λ² μ΄μ€λ₯Ό μ€ννλ κ² μμ²΄κ° λ¬Έμ κ° λ μ μλ€. μ¦ μ΄μ μμ€ν μμ μ¬μ©νλ μ μ λ₯Ό μ€ννλ©΄ λ°μ΄ν°μ μμ€ μ°λ €κ° λ무 컀μ§κ² λλ κ²μ΄λ€. μ΄λ° κ²½μ°μ μλ‘μ΄ μ μ λ₯Ό μμ±νκ³ , μμ±ν μ μ μκ² κ³΅μ ν ν μ΄λΈμ΄λ κΈ°ν μ€λΈμ νΈμ λν μ κ·Ό κΆνλ§μ λΆμ¬νλ€λ©΄ λ¬Έμ λ μ½κ² ν΄κ²°ν μ μλ€. μΌλ°μ μΌλ‘ νμμ μΉμ¬μ΄νΈλ₯Ό λ°©λ¬Ένμ¬ μλΉμ€λ₯Ό μ΄μ©νλ €λ©΄ λ¨Όμ νμ κ°μ μ ν΄μΌ νλ€. μ μ μμ΄λ, ν¨μ€μλ, κΈ°ν κ°μΈμ 보λ₯Ό μ λ ₯νκ³ μ½κ΄μ λμνλ©΄ νμ κ°μ μ΄ λλ€. κ·Έλ¦¬κ³ μ μ μμ΄λμ ν¨μ€μλλ‘ λ‘κ·ΈμΈνλ©΄ μΉμ¬μ΄νΈμ μλΉμ€λ₯Ό μ΄μ©ν μ μκ² λλ€. κ·Έλ¬λ μνλ μ λ£ κ²μκ³Ό κ°μ νΉμ 컨ν μΈ λ₯Ό μ΄μ©νλ €λ©΄ 'κΆνμ΄ μλ€'λΌλ λ©μμ§λ₯Ό λ³Ό μ μλ€. μ¬κΈ°μ μ μ μμ΄λμ ν¨μ€μλλ₯Ό μ μ λΌ ν μ μκ³ , μ λ£ μλΉμ€μ λν κ²°μ¬ μ¬λΆλ₯Ό κΆνμ΄λΌ ν μ μλ€. λλΆλΆμ λ°μ΄ν°λ² μ΄μ€λ λ°μ΄ν° 보νΈμ 보μμ μν΄μ μ μ μ κΆνμ κ΄λ¦¬νκ³ μλλ°, μλ₯Ό λ€μ΄ Oracleμ μ€μΉνλ©΄ κΈ°λ³Έμ μΌλ‘ μ 곡λλ μ μ λ€μΈ SYS, SYSTEM, SCOTT μ μ μ λν΄μ [ν β ‘-2-8]μ ν΅ν΄μ κ°λ¨νκ² μμλ³Έλ€.
Oracleκ³Ό SQL Serverμ μ¬μ©μμ λν μν€ν μ²λ λ€λ₯Έ λ©΄μ΄ λ§λ€. Oracleμ μ μ λ₯Ό ν΅ν΄ λ°μ΄ν°λ² μ΄μ€μ μ μμ νλ ννμ΄λ€. μ¦ μμ΄λμ λΉλ°λ²νΈ λ°©μμΌλ‘ μΈμ€ν΄μ€μ μ μμ νκ³ κ·Έμ ν΄λΉνλ μ€ν€λ§μ μ€λΈμ νΈ μμ± λ±μ κΆνμ λΆμ¬λ°κ² λλ€. SQL Serverλ μΈμ€ν΄μ€μ μ μνκΈ° μν΄ λ‘κ·ΈμΈμ΄λΌλ κ²μ μμ±νκ² λλ©°, μΈμ€ν΄μ€ λ΄μ μ‘΄μ¬νλ λ€μμ λ°μ΄ν°λ² μ΄μ€μ μ°κ²°νμ¬ μμ νκΈ° μν΄ μ μ λ₯Ό μμ±ν ν λ‘κ·ΈμΈκ³Ό μ μ λ₯Ό λ§€νν΄ μ£Όμ΄μΌ νλ€. λ λμκ° νΉμ μ μ λ νΉμ λ°μ΄ν°λ² μ΄μ€ λ΄μ νΉμ μ€ν€λ§μ λν΄ κΆνμ λΆμ¬λ°μ μ μλ€. SQL Server λ‘κ·ΈμΈμ λ κ°μ§ λ°©μμΌλ‘ κ°λ₯νλ€. 첫 λ²μ§Έ, Windows μΈμ¦ λ°©μμΌλ‘ Windowsμ λ‘κ·ΈμΈν μ 보λ₯Ό κ°μ§κ³ SQL Serverμ μ μνλ λ°©μμ΄λ€. Microsoft Windows μ¬μ©μ κ³μ μ ν΅ν΄ μ°κ²°λλ©΄ SQL Serverλ μ΄μ 체μ μ Windows 보μ 주체 ν ν°μ μ¬μ©νμ¬ κ³μ μ΄λ¦κ³Ό μνΈκ° μ ν¨νμ§ νμΈνλ€. μ¦ Windowsμμ μ¬μ©μ IDλ₯Ό νμΈνλ€. SQL Serverλ μνΈλ₯Ό μμ²νμ§ μμΌλ©° IDμ μ ν¨μ± κ²μ¬λ₯Ό μννμ§ μλλ€. Windows μΈμ¦μ κΈ°λ³Έ μΈμ¦ λͺ¨λμ΄λ©° SQL Server μΈμ¦λ³΄λ€ ν¨μ¬ λ μμ νλ€. Windows μΈμ¦μ Kerberos 보μ νλ‘ν μ½μ μ¬μ©νκ³ , μνΈ μ μ± μ μ μ©νμ¬ κ°λ ₯ν μνΈμ λν΄ μ ν©ν 볡μ‘μ± μμ€μ μ μ§νλλ‘ νλ©°, κ³μ μ κΈ λ° μνΈ λ§λ£λ₯Ό μ§μνλ€. SQL Serverκ° Windowsμμ μ 곡νλ μ격 μ¦λͺ μ μ λ’°νλ―λ‘ Windows μΈμ¦μ μ¬μ©ν μ°κ²°μ νΈλ¬μ€νΈλ μ°κ²°μ΄λΌκ³ λ νλ€. λ λ²μ§Έ, νΌν© λͺ¨λ(Windows μΈμ¦ λλ SQL μΈμ¦) λ°©μμΌλ‘ κΈ°λ³Έμ μΌλ‘ Windows μΈμ¦μΌλ‘λ SQL Serverμ μ μ κ°λ₯νλ©°, Oracleμ μΈμ¦κ³Ό κ°μ λ°©μμΌλ‘ μ¬μ©μ μμ΄λμ λΉλ°λ²νΈλ‘ SQL Serverμ μ μνλ λ°©μμ΄λ€. SQL μΈμ¦μ μ¬μ©ν λλ κ°λ ₯ν μνΈ(μ«μ+λ¬Έμ+νΉμλ¬Έμ λ±μ νΌν©νμ¬ μ¬μ©)λ₯Ό μ¬μ©ν΄μΌ νλ€. μλ₯Ό λ€μ΄, μλ [κ·Έλ¦Ό β ‘-1-16]μ 보면 SCOTTμ΄λΌλ LOGIN μ΄λ¦μΌλ‘ μΈμ€ν΄μ€ INST1μ μ μμ νμ¬ λ―Έλ¦¬ λ§€νλμ΄ μλ SCOTTμ΄λΌλ μ μ λ₯Ό ν΅ν΄ PRODUCTλΌλ μ€ν€λ§μ μν΄ μλ ITEMμ΄λΌλ ν μ΄λΈμ λ°μ΄ν°λ₯Ό μ‘μΈμ€νκ³ μλ€.
μ μ λ₯Ό μμ±νκ³ λ°μ΄ν°λ² μ΄μ€μ μ μνλ€. νμ§λ§ λ°μ΄ν°λ² μ΄μ€μ μ μνλ€κ³ ν΄μ ν μ΄λΈ, λ·°, μΈλ±μ€ λ±κ³Ό κ°μ μ€λΈμ νΈ(OBJECT)λ₯Ό μμ±ν μλ μλ€. μ¬μ©μκ° μ€ννλ λͺ¨λ DDL λ¬Έμ₯(CREATE, ALTER, DROP, RENAME λ±)μ κ·Έμ ν΄λΉνλ μ μ ν κΆνμ΄ μμ΄μΌλ§ λ¬Έμ₯μ μ€νν μ μλ€. μ΄λ¬ν κΆνμ μμ€ν κΆνμ΄λΌκ³ νλ©° μ½ 100κ° μ΄μμ μ’ λ₯κ° μλ€. μΌλ°μ μΌλ‘ μμ€ν κΆνμ μΌμΌμ΄ μ μ μκ² λΆμ¬λμ§ μλλ€. 100κ° μ΄μμ μμ€ν κΆνμ μΌμΌμ΄ μ¬μ©μμκ² μ€μ νλ κ²μ λ무 볡μ‘νκ³ , νΉν μ μ λ‘λΆν° κΆνμ κ΄λ¦¬νκΈ°κ° μ΄λ ΅κΈ° λλ¬Έμ΄λ€. κ·Έλμ λ‘€(ROLE)μ μ΄μ©νμ¬ κ°νΈνκ³ μ½κ² κΆνμ λΆμ¬νκ² λλ€. λ‘€μ λν μμΈν μ€λͺ μ μ°¨νμ νλλ‘ νκ³ λ¨Όμ μ μ λ₯Ό μμ±νκ³ κΆνμ λΆμ¬νλ€. μλ‘μ΄ μ μ λ₯Ό μμ±νλ €λ©΄ μΌλ¨ μ μ μμ± κΆν(CREATE USER)μ΄ μμ΄μΌ νλ€.
[μμ ] SCOTT μ μ λ‘ μ μν λ€μ PJS μ μ (ν¨μ€μλ: KOREA7)λ₯Ό μμ±ν΄ λ³Έλ€.
[μμ ] Oracle
CONN SCOTT/TIGER μ°κ²°λμλ€.
* 1νμ μ€λ₯: ERROR: κΆνμ΄ λΆμΆ©λΆνλ€
νμ¬ SCOTT μ μ λ μ μ λ₯Ό μμ±ν κΆνμ λΆμ¬λ°μ§ λͺ»νκΈ° λλ¬Έμ κΆνμ΄ λΆμΆ©λΆνλ€λ μ€λ₯κ° λ°μνλ€. Oracleμ DBA κΆνμ κ°μ§κ³ μλ SYSTEM μ μ λ‘ μ μνλ©΄ μ μ μμ± κΆν(CREATE USER)μ λ€λ₯Έ μ μ μκ² λΆμ¬ν μ μλ€.
[μμ ] SCOTT μ μ μκ² μ μ μμ± κΆν(CREATE USER)μ λΆμ¬ν ν λ€μ PJS μ μ λ₯Ό μμ±νλ€.
[μμ λ° μ€ν κ²°κ³Ό Oracle]
κΆνμ΄ λΆμ¬λμλ€.
CONN SCOTT/TIGER μ°κ²°λμλ€.
μ¬μ©μκ° μμ±λμλ€.
SQL Serverλ μ μ λ₯Ό μμ±νκΈ° μ λ¨Όμ λ‘κ·ΈμΈμ μμ±ν΄μΌ νλ€. λ‘κ·ΈμΈμ μμ±ν μ μλ κΆνμ κ°μ§ λ‘κ·ΈμΈμ κΈ°λ³Έμ μΌλ‘ saμ΄λ€.
[μμ ] saλ‘ λ‘κ·ΈμΈμ ν ν SQL μΈμ¦μ μ¬μ©νλ PJSλΌλ λ‘κ·ΈμΈ(ν¨μ€μλ: KOREA7)μ μμ±ν΄ λ³Έλ€. λ‘κ·ΈμΈ ν μ΅μ΄λ‘ μ μν λ°μ΄ν°λ² μ΄μ€λ AdventureWorks λ°μ΄ν°λ² μ΄μ€λ‘ μ€μ νλ€.
[μμ λ° μ€ν κ²°κ³Ό SQL Server]
SQL Serverμμμ μ μ λ λ°μ΄ν°λ² μ΄μ€λ§λ€ μ‘΄μ¬νλ€. κ·Έλ¬λ―λ‘ μ μ λ₯Ό μμ±νκΈ° μν΄μλ μμ±νκ³ μ νλ μ μ κ° μν λ°μ΄ν°λ² μ΄μ€λ‘ μ΄λμ ν ν μ²λ¦¬ν΄μΌ νλ€.
[μμ λ° μ€ν κ²°κ³Ό SQL Server]
[μμ ] μμ±λ PJS μ μ λ‘ λ‘κ·ΈμΈνλ€.
[μμ λ° μ€ν κ²°κ³Ό Oracle]
μ€λ₯: ERROR: μ¬μ©μ PJSλ CREATE SESSION κΆνμ κ°μ§κ³ μμ§ μμ;
λ‘κ·Έμ¨μ΄ κ±°μ λμλ€.
PJS μ μ κ° μμ±λμ§λ§ μλ¬΄λ° κΆνλ λΆμ¬λ°μ§ λͺ»νκΈ° λλ¬Έμ λ‘κ·ΈμΈμ νλ©΄ CREATE SESSION κΆνμ΄ μλ€λ μ€λ₯κ° λ°μνλ€. μ μ κ° λ‘κ·ΈμΈμ νλ €λ©΄ CREATE SESSION κΆνμ λΆμ¬λ°μμΌ νλ€.
[μμ ] PJS μ μ κ° λ‘κ·ΈμΈν μ μλλ‘ CREATE SESSION κΆνμ λΆμ¬νλ€.
[μμ ] Oracle
μ°κ²°λμλ€.
κΆνμ΄ λΆμ¬λμλ€.
μ°κ²°λμλ€.
[μμ ] PJS μ μ λ‘ ν μ΄λΈμ μμ±νλ€.
[μμ λ° μ€ν κ²°κ³Ό Oracle]
μ νλ λ μ½λκ° μλ€.
* 1 νμμ€λ₯: ERROR: κΆνμ΄λΆμΆ©λΆνλ€.
[μμ λ° μ€ν κ²°κ³Ό SQL Server]
λ°μ΄ν°λ² μ΄μ€ 'AdventureWorks'μμ CREATE TABLE μ¬μ©κΆνμ΄κ±°λΆλμλ€.
PJS μ μ λ λ‘κ·ΈμΈ κΆνλ§ λΆμ¬λμκΈ° λλ¬Έμ ν μ΄λΈμ μμ±νλ €λ©΄ ν μ΄λΈ μμ± κΆν(CREATE TABLE)μ΄ λΆμΆ©λΆνλ€λ μ€λ₯κ° λ°μνλ€.(Oracle, SQL Server)
[μμ ] SYSTEM μ μ λ₯Ό ν΅νμ¬ PJS μ μ μκ² CREATE TABLE κΆνμ λΆμ¬ν ν λ€μ ν μ΄λΈμ μμ±νλ€.
[μμ λ° μ€ν κ²°κ³Ό Oracle]
μ°κ²°λμλ€.
κΆνμ΄ λΆμ¬λμλ€.
CONN PJS/KOREA7 μ°κ²°λμλ€.
ν μ΄λΈμ΄ μμ±λμλ€.
[μμ λ° μ€ν κ²°κ³Ό SQL Server]
κΆνμ΄ λΆμ¬λμλ€.
μ€ν€λ§μ κΆνμ λΆμ¬νλ€.
[μμ ] SQL Server
κΆνμ΄ λΆμ¬λμλ€.
PJSλ‘ λ‘κ·ΈμΈνλ€.
ν μ΄λΈμ΄ μμ±λμλ€.
μμμ PJS μ μ λ₯Ό μμ±νμ¬ λ‘κ·ΈμΈνκ³ ν μ΄λΈμ λ§λλ κ³Όμ μμ λͺ κ°μ§μ κΆνμ λν΄μ μ΄ν΄λ³΄μλ€. μ΄μ λ νΉμ μ μ κ° μμ ν κ°μ²΄(OBJECT) κΆνμ λν΄ μμλ³Έλ€. μ€λΈμ νΈ κΆνμ νΉμ μ€λΈμ νΈμΈ ν μ΄λΈ, λ·° λ±μ λν SELECT, INSERT, DELETE, UPDATE μμ λͺ λ Ήμ΄λ₯Ό μλ―Ένλ€. [ν β ‘-2-9]λ μ€λΈμ νΈ κΆνκ³Ό μ€λΈμ νΈμμ κ΄κ³λ₯Ό λ³΄μ¬ μ£Όκ³ μλ€.
μμμ PJS μ μ κ° μμ±ν MENU ν μ΄λΈμ SCOTT μ μ λ₯Ό ν΅ν΄μ μ‘°ννλ©΄ μ΄λ»κ² λ κΉ? SCOTT, PJS λΏλ§ μλλΌ λͺ¨λ μ μ λ κ°κ° μμ μ΄ μμ±ν ν μ΄λΈ μΈμ λ€λ₯Έ μ μ μ ν μ΄λΈμ μ κ·Όνλ €λ©΄ ν΄λΉ ν μ΄λΈμ λν μ€λΈμ νΈ κΆνμ μμ μλ‘λΆν° λΆμ¬λ°μμΌ νλ€. μ°λ¦¬κ° λ¨μ μ§μ λ°©λ¬Ένμ λ μ§μ£ΌμΈμ νλ½ μμ΄λ μ§μ λ€μ΄κ° μ μλ κ²κ³Ό κ°μ μ΄μΉμ΄λ€. SQL Serverλ κ°μ λ°©μμΌλ‘ λμνλ€. ν κ°μ§ λ€λ₯Έ μ μ μμμ μΈκΈνλ―μ΄ μ μ λ λ¨μ§ μ€ν€λ§μ λν κΆνλ§μ κ°μ§λ€. λ€μ λ§νλ©΄ ν μ΄λΈκ³Ό κ°μ μ€λΈμ νΈλ μ μ κ° μμ νλ κ²μ΄ μλκ³ μ€ν€λ§κ° μμ λ₯Ό νκ² λλ©° μ μ λ μ€ν€λ§μ λν΄ νΉμ ν κΆνμ κ°μ§λ κ²μ΄λ€. λ¨Όμ SCOTT μ μ λ‘ μ μνμ¬ PJS.MENU ν μ΄λΈμ μ‘°ννλ€. λ€λ₯Έ μ μ κ° μμ ν κ°μ²΄μ μ κ·ΌνκΈ° μν΄μλ κ°μ²΄ μμ κ°μ²΄λ₯Ό μμ ν μ μ μ μ΄λ¦μ λΆμ¬μ μ κ·Όν΄μΌ νλ€. SQL Serverλ κ°μ²΄ μμ μμ ν μ μ μ μ΄λ¦μ λΆμ΄λ κ²μ΄ μλκ³ κ°μ²΄κ° μν μ€ν€λ§ μ΄λ¦μ λΆμ¬μΌ νλ€.
[μμ λ° μ€ν κ²°κ³Ό Oracle]
μ°κ²°λμλ€.
SELECT * FROM PJS.MENU
* 1 νμμ€λ₯: ERROR: ν μ΄λΈλλλ·°κ°μ‘΄μ¬νμ§μλλ€.
SCOTTλ‘ λ‘κ·ΈμΈνλ€.
[μμ λ° μ€ν κ²°κ³Ό SQL Server]
κ°μ²΄μ΄λ¦ 'dbo.MENU'μ΄(κ°) μλͺ»λμλ€.
SCOTT μ μ λ PJS μ μ λ‘λΆν° MENU ν μ΄λΈμ SELECTν μ μλ κΆνμ λΆμ¬λ°μ§ λͺ»νκΈ° λλ¬Έμ MENU ν μ΄λΈμ μ‘°νν μ μλ€.
[μμ ] PJS μ μ λ‘ μ μνμ¬ SCOTT μ μ μκ² MENU ν μ΄λΈμ SELECT ν μ μλ κΆνμ λΆμ¬νλ€.
[μμ λ° μ€ν κ²°κ³Ό Oracle]
μ°κ²°λμλ€.
1κ°μ νμ΄ λ§λ€μ΄μ‘λ€.
컀λ°μ΄ μλ£λμλ€.
κΆνμ΄ λΆμ¬λμλ€.
[μμ λ° μ€ν κ²°κ³Ό SQL Server]
PJSλ‘ λ‘κ·ΈμΈνλ€.
1κ°μ νμ΄ λ§λ€μ΄μ‘λ€.
κΆνμ΄ λΆμ¬λμλ€.
λ€μ ν λ² SCOTT μ μ λ‘ μ μνμ¬ PJS.MENU ν μ΄λΈμ μ‘°ννλ€. μ΄μ PJS.MENU ν μ΄λΈμ SELECTνλ©΄ ν μ΄λΈ μλ£λ₯Ό λ³Ό μ μλ€. SCOTT μ μ λ PJS.MENU ν μ΄λΈμ SELECTνλ κΆνλ§ λΆμ¬ λ°μκΈ° λλ¬Έμ UPDATE, INSERT, DELETEμ κ°μ λ€λ₯Έ μμ μ ν μ μλ€. μ€λΈμ νΈ κΆνμ SELECT, INSERT, DELETE, UPDATE λ±μ κΆνμ λ°λ‘λ°λ‘ κ΄λ¦¬νλ€.
[μμ ] PJS.MENU ν μ΄λΈμ UPDATEλ₯Ό μλνλ€.
[μμ λ° μ€ν κ²°κ³Ό Oracle]
μ°κ²°λμλ€.
1
νμ΄ν
1 κ°μ νμ΄ μ νλμμ΅λλ€.
UPDATE PJS.MENU * 1 νμμ€λ₯
SCOTTμΌλ‘ λ‘κ·ΈμΈνλ€.
[μμ λ° μ€ν κ²°κ³Ό SQL Server]
1
νμ΄ν
1 κ°μ νμ΄ μ νλμμ΅λλ€.
κ°μ²΄'MENU', λ°μ΄ν°λ² μ΄μ€ 'AdventureWorks', μ€ν€λ§ 'dbo'μ λν UPDATE κΆνμ΄κ±°λΆλμλ€.
κΆνμ΄ λΆμ‘±νμ¬ UPDATEλ₯Ό ν μ μλ€λ μ€λ₯κ° λνλλ€. PJS μ μ μκ² UPDATE κΆνμ λΆμ¬ν ν λ€μ μλνλ©΄ μ λ°μ΄νΈκ° κ°λ₯νλ€.
μ μ λ₯Ό μμ±νλ©΄ κΈ°λ³Έμ μΌλ‘ CREATE SESSION, CREATE TABLE, CREATE PROCEDURE λ± λ§μ κΆνμ λΆμ¬ν΄μΌ νλ€. λ°μ΄ν°λ² μ΄μ€ κ΄λ¦¬μλ μ μ κ° μμ±λ λλ§λ€ κ°κ°μ κΆνλ€μ μ μ μκ² λΆμ¬νλ μμ μ μνν΄μΌ νλ©° κ°νΉ κΆνμ λΉ λ¨λ¦΄ μλ μμΌλ―λ‘ κ° μ μ λ³λ‘ μ΄λ€ κΆνμ΄ λΆμ¬λμλμ§λ₯Ό κ΄λ¦¬ν΄μΌ νλ€. νμ§λ§ κ΄λ¦¬ν΄μΌ ν μ μ κ° μ μ λμ΄λκ³ μμ£Ό λ³κ²½λλ μν©μμλ λ§€μ° λ²κ±°λ‘μ΄ μμ μ΄ λ κ²μ΄λ€. μ΄μ κ°μ λ¬Έμ λ₯Ό μ€μ΄κΈ° μνμ¬ λ§μ λ°μ΄ν°λ² μ΄μ€μμ μ μ λ€κ³Ό κΆνλ€ μ¬μ΄μμ μ€κ° μν μ νλ ROLEμ μ 곡νλ€. λ°μ΄ν°λ² μ΄μ€ κ΄λ¦¬μλ ROLEμ μμ±νκ³ , ROLEμ κ°μ’ κΆνλ€μ λΆμ¬ν ν ROLEμ λ€λ₯Έ ROLEμ΄λ μ μ μκ² λΆμ¬ν μ μλ€. λν ROLEμ ν¬ν¨λμ΄ μλ κΆνλ€μ΄ νμν μ μ μκ²λ ν΄λΉ ROLEλ§μ λΆμ¬ν¨μΌλ‘μ¨ λΉ λ₯΄κ³ μ ννκ² νμν κΆνμ λΆμ¬ν μ μκ² λλ€. [κ·Έλ¦Ό β ‘-2-17]μμλ μ μ λ€κ³Ό κΆνλ€ μ¬μ΄ κ° ROLEμ μν μ λ³΄μ¬ μ£Όκ³ μλ€. μΌμͺ½ κ·Έλ¦Όμ κΆνμ μ§μ μ μ μκ² ν λΉν λλ₯Ό λνλ΄λ κ²μ΄λ©°, μ€λ₯Έμͺ½ κ·Έλ¦Όμ ROLEμ κΆνμ λΆμ¬ν ν ROLEμ μ μ λ€μκ² λΆμ¬νλ κ²μ λνλ΄κ³ μλ€.
ROLEμλ μμ€ν κΆνκ³Ό μ€λΈμ νΈ κΆνμ λͺ¨λ λΆμ¬ν μ μμΌλ©°, ROLEμ μ μ μκ² μ§μ λΆμ¬λ μλ μκ³ , λ€λ₯Έ ROLEμ ν¬ν¨νμ¬ μ μ μκ² λΆμ¬λ μλ μλ€.
[μμ ] JISUNG μ μ μκ² CREATE SESSIONκ³Ό CREATE TABLE κΆνμ κ°μ§ ROLEμ μμ±ν ν ROLEμ μ΄μ©νμ¬ λ€μ κΆνμ ν λΉνλ€. κΆνμ μ·¨μν λλ REVOKEλ₯Ό μ¬μ©νλ€.
[μμ λ° μ€ν κ²°κ³Ό Oracle]
μ°κ²°λμλ€.
κΆνμ΄ μ·¨μλμλ€.
CONN JISUNG/KOREA7 ERROR: μ¬μ©μ JISUNGμ CREATE SESSION κΆνμκ°μ§κ³ μμ§μμ.λ‘κ·Έμ¨μ΄κ±°μ λμλ€.
saλ‘ λ‘κ·ΈμΈνλ€.
[μμ ] SQL Server
κΆνμ΄ μ·¨μλμλ€.
PJSλ‘ λ‘κ·ΈμΈνλ€.
[μμ λ° μ€ν κ²°κ³Ό SQL Server]
λ°μ΄ν°λ² μ΄μ€ 'AdventureWorks'μμ CREATE TABLE μ¬μ©κΆνμ΄κ±°λΆλμλ€.
[μμ ] μ΄μ LOGIN_TABLEμ΄λΌλ ROLEμ λ§λ€κ³ , μ΄ ROLEμ μ΄μ©νμ¬ JISUNG μ μ μκ² κΆνμ λΆμ¬νλ€.
[μμ λ° μ€ν κ²°κ³Ό Oracle]
μ°κ²°λμλ€.
λ‘€μ΄ μμ±λμλ€.
κΆνμ΄ λΆμ¬λμλ€.
κΆνμ΄ λΆμ¬λμλ€.
μ°κ²°λμλ€.
ν μ΄λΈμ΄ μμ±λμλ€.
μ΄μ κ°μ΄ ROLEμ λ§λ€μ΄ μ¬μ©νλ κ²μ΄ κΆνμ μ§μ λΆμ¬νλ κ²λ³΄λ€ λΉ λ₯΄κ³ μμ νκ² μ μ λ₯Ό κ΄λ¦¬ν μ μλ λ°©λ²μ΄λ€. Oracleμμλ κΈ°λ³Έμ μΌλ‘ λͺ κ°μ§ ROLEμ μ 곡νκ³ μλ€. κ·Έ μ€ κ°μ₯ λ§μ΄ μ¬μ©νλ ROLEμ CONNECTμ RESOURCEμ΄λ€. μ°Έμ‘°λ₯Ό μν΄ [ν β ‘-2-11]μ CONNECTμ RESOURCE ROLEμ λΆμ¬λ κΆν λͺ©λ‘μ μ 리ν κ²μ΄λ€. CONNECTλ CREATE SESSIONκ³Ό κ°μ λ‘κ·ΈμΈ κΆνμ΄ ν¬ν¨λμ΄ μκ³ , RESOURCEλ CREATE TABLEκ³Ό κ°μ μ€λΈμ νΈμ μμ± κΆνμ΄ ν¬ν¨λμ΄ μλ€. μΌλ°μ μΌλ‘ μ μ λ₯Ό μμ±ν λ CONNECTμ RESOURCE ROLEμ μ¬μ©νμ¬ κΈ°λ³Έ κΆνμ λΆμ¬νλ€.
μ μ λ₯Ό μμ νλ λͺ λ Ήμ΄λ DROP USERμ΄κ³ , CASCADE μ΅μ μ μ£Όλ©΄ ν΄λΉ μ μ κ° μμ±ν μ€λΈμ νΈλ₯Ό λ¨Όμ μμ ν ν μ μ λ₯Ό μμ νλ€.
[μμ ] μμμ MENUλΌλ ν μ΄λΈμ μμ±νκΈ° λλ¬Έμ CASCADE μ΅μ μ μ¬μ©νμ¬ JISUNG μ μ λ₯Ό μμ ν ν, μ μ μ¬μμ± λ° κΈ°λ³Έμ μΈ ROLEμ λΆμ¬νλ€.
[μμ λ° μ€ν κ²°κ³Ό Oracle]
μ°κ²°λμλ€.
μ¬μ©μκ° μμ λμλ€.
* JISUNG μ μ κ° λ§λ MENU ν μ΄λΈλ κ°μ΄ μμ λμλ€.
μ¬μ©μκ° μμ±λμλ€.
κΆνμ΄ λΆμ¬λμλ€.
μ°κ²°λμλ€.
ν μ΄λΈμ΄ μμ±λμλ€.
SQL Serverμμλ μμ κ°μ΄ ROLEμ μμ±νμ¬ μ¬μ©ν기보λ€λ κΈ°λ³Έμ μΌλ‘ μ 곡λλ ROLEμ λ©€λ²λ‘ μ°Έμ¬νλ λ°©μμΌλ‘ μ¬μ©νλ€. νΉμ λ‘κ·ΈμΈμ΄ λ©€λ²λ‘ μ°Έμ¬ν μ μλ μλ² μμ€ μν (ROLE)μ [ν β ‘-2-12]μ κ°λ€.
λ°μ΄ν°λ² μ΄μ€μ μ‘΄μ¬νλ μ μ μ λν΄μλ μλμ κ°μ λ°μ΄ν°λ² μ΄μ€ μν μ λ©€λ²λ‘ μ°Έμ¬ν μ μλ€.
SQL Serverμμλ Oracleκ³Ό κ°μ΄ Roleμ μμ£Ό μ¬μ©νμ§ μλλ€. λμ μμμ μΈκΈν μλ² μμ€ μν λ° λ°μ΄ν°λ² μ΄μ€ μμ€ μν μ μ΄μ©νμ¬ λ‘κ·ΈμΈ λ° μ¬μ©μ κΆνμ μ μ΄νλ€. μΈμ€ν΄μ€ μμ€μ μμ μ΄ νμν κ²½μ° μλ² μμ€ μν μ λΆμ¬νκ³ κ·Έλ³΄λ€ μμ κ°λ μΈ λ°μ΄ν°λ² μ΄μ€ μμ€μ κΆνμ΄ νμν κ²½μ° λ°μ΄ν°λ² μ΄μ€ μμ€μ μν μ λΆμ¬νλ©΄ λλ€. μ¦ μΈμ€ν΄μ€ μμ€μ μꡬνλ λ‘κ·ΈμΈμλ μλ² μμ€ μν μ, λ°μ΄ν°λ² μ΄μ€ μμ€μ μꡬνλ μ¬μ©μμκ²λ λ°μ΄ν°λ² μ΄μ€ μμ€ μν μ λΆμ¬νλ€.
μΆμ² : λ°μ΄ν°μ¨μμ΄ β νκ΅λ°μ΄ν°μ°μ μ§ν₯μ()