SQL

오라클 | DDL, DML, DCL 기능

Keep going AI 2025. 8. 15. 12:09

 

1. DDL( data definition language , 데이터 정의어)
    1) create
       ex) CREATE TABLE emp
            {
               email VARCHAR(20),
               age NUMBER(2)
            };

 

    2) alter( 컬럼 속성추가, 삭제, 변경)
         ex)  ALTER TABLE emp ADD email VARCHAR(25);  -- email 컬럼을 varchar(25)  속성추가
              ALTER TABLE emp ADD age NUMBER(3);  -- age컬럼을 3자리수 속성추가
              ALTER TABLE emp DROP COLUMN email;   -- email 컬럼 삭제 
              ALTER TABLE sample MODIFY test_varchar2 VARCHAR(5); -- test_varchr2컬럼을 varchar(5) 로 변경( 값이 없이 비어있는 컬럼만 가능)

    3) drop ( 테이블 자체삭제 , 자동 commit)
       ex) drop TABLE emp;

    4) truncate ( 테이블 구조유지, 자동 commit )
       ex) TRUNCATE table emp;

 


 2. DML ( data manipulation language , 데이터 정의)
    1) select 
        ex) select * from emp;

    2) insert( 새로운 열 삽입)
        ex) INSERT INTO emp VALUES('123@naver.com', 21);
             INSERT INTO emp(email,age) select email,age from dept where age=21;

     3) update( 열 내용 변경)
        ex) UPDATE emp set email='456@naver.com' where age=21;

    4) delete( 행단위로 삭제, rollback 가능)
      ex) DELETE from emp WHERE age=21;
  

 


 3. DCL ( data control language ,데이터 제어어)
   (1) grant (권한부여)
       ex) GRANT SELECT on emp to user1;
   (2) revoke(권한 회수)
       ex) REVOKE UPDATE on emp from user1;