ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [DDL]ALTER,DROP,TRUNCATE,RENAME
    SQLD/SQL 2023. 8. 29. 12:49

    1.ALTER

    • 테이블 구조를 변경하기 위한 명령어
    • 속성의 추가,삭제,변경(데이터 타입,제약조건 및 속성의 이름)
    종류
    (Oracle/SQL Server)
    설명
    ADD 새로운 컬럼,제약조건의 추가
    👉🏻컬럼의 추가
    ALTER TABLE 테이블명 ADD [COLUMN] 컬럼명 테이터 타입
    *오라클에서는 [COLUMN]을 생략한다.
    👉🏻제약조건의 추가
    ALTER TABLE 테이블명 ADD CONSTARINT 제약조건명 제약조건(컬럼명)
    MODIFY / ALTER 컬럼의 데이터 유형, 제약조건(DEFAULT값, NOT NULL)에 대한 변경
    ALTER TABLE 테이블명 MODIFY 컬럼명 데이터유형 [DEFAULT 값] [NOT NULL]    
    ALTER TABLE 테이블명 ALTER COLUMN 컬럼명 데이터유형 [DEFAULT 값] [NOT NULL]  
    DROP 컬럼,제약조건의 제거
    👉🏻컬럼의 제거
    ALTER TABLE 테이블명 DROP COLUMN 컬럼명;
    👉🏻제약조건의 제거
    ALTER TABLE 테이블명 DROP CONSTRAINT 제약조건명;
    RENAME 컬럼,제약조건의 이름 변경
    오라클 등 일부 DBMS에서만 지원한다.
    SQL Server에서는 sp_rename저장 프로시저를 이용하여 변경 가능하다.
    👉🏻컬럼 이름의 변경
    ALTER TABLE 테이블명 RENAME COLUMN 기존 컬럼명 TO 새로운 컬럼명
    ALTER TABLE 테이블명 RENAME CONSTRAINT 기존 제약조건명 TO 변경할 제약조건명

     

    2.RENAME

    RENAME 변경 전 테이블명 TO 변경 후 테이블명;

     

    • 테이블 이름을 변경하는 명령어

    3.DROP

    DROP TABLE 테이블명[CASCADE CONSTRAINT]
    • 삭제하려는 테이블을 다른 테이블이 참조한다면 CASCADE옵션을 명시해야 삭제 가능
    • CASECADE CONSTRAINT는 참조 제약조건도 함께 삭제한다.

    4.TRUNCATE

    TRUNCATE TABLE 테이블명;
    • 테이블 구조는 유지하고 데이터만 전부 삭제한다.
    • DELETE구문을 WHERE절 없이 사용하는것과 같지만,TRUNCATE는 ROLLBACK이 불가능해 DDL로 분류

     

    'SQLD > SQL' 카테고리의 다른 글

    [DML]SELECT-서브쿼리  (0) 2023.09.07
    [DML]SELECT-연산자  (0) 2023.08.30
    [DML]SELECT구문  (0) 2023.08.29
    [DML]INSERT,UPDATE,DELETE  (0) 2023.08.29
    [DDL]CREATE  (0) 2023.08.28
Designed by Tistory.