Patrick's 데이터 세상

DDL_ALTER 구문 본문

Programming/Oracle

DDL_ALTER 구문

patrick610 2020. 6. 21. 14:35
반응형
SMALL

ALTER 구문

 

기존에 만들어진 테이블, 인덱스, 유저에 새로운 속성(항목)을 추가하거나 기존 속성을 변경, 삭제할 때 사용하는 명령어입니다.

 

 

* ALTER 구문 형식

 

 

컬럼 추가

 

ALTER TABLE 테이블명 ADD(컬럼명 데이터타입(사이즈));

 

원하는 테이블에 컬럼을 추가합니다.

* 테이블이 비어있지 않다면 NOT NULL을 쓸수 없습니다.

 

ex) ALTER TABLE STUDENT ADD(AGE NUMBER(4));

 

 

컬럼명 수정

 

ALTER TABLE 테이블명 RENAME COLUMN 컬럼명 TO 변경할 컬럼명;

 

특정 테이블의 해당 컬럼명을 수정합니다.

 

ex) ALTER TABLE STUDENT RENAME COLUMN GEND TO GENDER;

 

 

컬럼 타입 수정

 

ALTER TABLE 테이블명 MODIFY(컬럼명 데이터타입(사이즈));

 

특정 테이블의 해당 컬럼의 데이터타입을 수정합니다.

* 해당 속성의 모든 튜플이 비어져 있어야 변경 가능합니다.

 

ex) ALTER TABLE STUDENT MODIFY(AGE NUMBER(4));

 

 

컬럼 | KEY 삭제

 

ALTER TABLE 테이블명 DROP COLUMN 컬럼명;

ALTER TABLE 테이블명 DROP FOREIGN KEY 제약조건명;

 

* 주키(Primary Key)는 삭제 불가합니다.

  하지만 외래키(Foreign Key)는 삭제 가능합니다.

 

ex) ALTER TABLE STUDENT DROP COLUMN AGE;

     ALTER TABLE STUDENT DROP FOREIGN KEY ID;

 

 

INDEX명 수정

 

ALTER INDEX 변경전 이름 RENAME TO 변경할 이름;

 

인덱스명도 컬럼명과 마찬가지로 수정할 수 있습니다.

 

ex) ALTER INDEX STUDENT_T1 RENAME TO STUDENT_T2;

 

 

INDEX 재생성

 

ALTER INDEX 계정명.테이블명 인덱스명 REBUILD;      

 

인덱스를 신속하게 다른 테이블스페이스로 옮깁니다.

인덱스를 DROP하지 않고 저장공간이나 테이블스페이스 PARAMETER를 변경할 수 있습니다.

 

 

제약조건 추가

 

ALTER TABLE 테이블명 ADD UNIQUE 컬럼명;

 

제약 조건명을 지정없이 UNIQUE 제약조건 추가하는 상황입니다.

 

ex) ALTER TABLE STUDENT ADD UNIQUE AGE;

 

 

ALTER TABLE 테이블명 ADD CONSTRAINT 제약 조건명 UNIQUE 컬럼명;

 

제약 조건명을 지정하여 UNIQUE 제약조건 추가하는 상황입니다.

 

ex) ALTER TABLE STUDENT ADD CONSTRAINT AGE_T1 UNIQUE AGE;

 

 

유저 잠금 설정

 

ALTER USER HR ACCOUNT LOCK;

 

이용자에 잠금 설정을 활성화합니다.

 

 

유저 잠금 해제

 

ALTER USER HR ACCOUNT UNLOCK;

 

이용자에 걸린 잠금 설정을 비활성화합니다.

 

 

유저 비밀번호 지정

 

ALTER USER STUDENT IDENTIFIED BY "새비밀번호"  REPLACE  "이전비밀번호" ;

 

유저의 비밀번호를 다른 비밀번호로 재설정합니다.

 

 

세션 종료

 

ALTER SYSTEM KILL SESSION 'sid, serial#';

 

세션의 SID값으로 세션을 종료합니다.

 

반응형
LIST

'Programming > Oracle' 카테고리의 다른 글

DROP된 테이블 살리기  (0) 2020.06.21
DROP 구문 생성하는 쿼리  (0) 2020.06.21
DDL_DROP 구문  (0) 2020.06.21
DDL_CREATE 구문  (0) 2020.06.21
DDL - SQL 정의어  (0) 2020.06.21
Comments