-
[DDL]ALTER,DROP,TRUNCATE,RENAMESQLD/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