1. 컬럼 추가
SQL> alter table emp3
2 add ( ssn1 number);
Table altered.
2. 컬럼 변경
SQL> alter table emp3
2 modify (ssn1 varchar2(10));
2 modify (ssn1 varchar2(10));
Table altered.
3. 컬럼 삭제
SQL> alter table emp3
2 drop column ssn1;
2 drop column ssn1;
Table altered.
4. 컬럼 사용 안함
SQL> ed
Wrote file afiedt.buf
1 alter table emp3
2* set unused column ssn
SQL> /
5. 제약 추가
SQL> alter table emp3
2 add constraint emp3_uni
3 unique ( ssn);
2 add constraint emp3_uni
3 unique ( ssn);
Table altered.
6. 제약 체크 연기
pk 가 걸린 부서 번호를 변경하려고 할경우 department_id 컬럼에 제약 연기를 걸어둔다.
그러면 부서와, 사원의 부서번호를 제약없이 동시에 update 할 수 있다.
제약을 걸때 연기 조건을 건다.
SQL>
SQL>
1 alter table dept2
2 add constraint dept2_id_pk
3 primary key (department_id)
4* deferrable initially deferred
SQL> /
2 add constraint dept2_id_pk
3 primary key (department_id)
4* deferrable initially deferred
SQL> /
Table altered.
작업후 제약을 풀어준다.
작업후 제약을 풀어준다.
SQL> set constraints dept2_id_pk immediate;
Constraint set.
모든 제약을 immediate 로 바꾼다.
모든 제약을 immediate 로 바꾼다.
SQL> alter session
2 set constraints = immediate;
2 set constraints = immediate;
Session altered.
7. 제약 삭제
SQL> ed
Wrote file afiedt.buf
Wrote file afiedt.buf
1 alter table emp3
2* drop constraint emp3_uni
SQL> /
2* drop constraint emp3_uni
SQL> /
Table altered.
8. 제약 사용 불가
SQL> ed
Wrote file afiedt.buf
Wrote file afiedt.buf
1 alter table emp3
2* disable constraint emp3_uni
SQL> /
2* disable constraint emp3_uni
SQL> /
Table altered.
9. 제약 다시 사용 가능
SQL> alter table emp3
2 enable constraint
3 emp3_uni;
2 enable constraint
3 emp3_uni;
Table altered.
'Computer Engineering > DB' 카테고리의 다른 글
오라클 Closed 백업(=Cold 백업) (0) | 2008.08.28 |
---|---|
오라클 Open 백업(=Hot Backup) (0) | 2008.08.28 |
APM_Setup DB 백업과 복구 (0) | 2008.08.17 |
오라클 외부 테이블 생성 (Oracle External Table ) (0) | 2008.08.14 |
오라클 딕셔너리 (Oracle Dictionary) (0) | 2008.08.14 |
오라클 권한 부여 , 롤 생성 ( oracle privileges, create role ) (1) | 2008.08.14 |
오라클 세이브 포인트 (oracle savepoint) (0) | 2008.08.14 |
오라클 기본 쿼리 (사용자 테이블 리스트보기, 모든 사용자보기, 테이블 제약조건 보기, sql 실행속도 ) (0) | 2008.08.14 |
오라클 사용자 생성, 삭제 (0) | 2008.08.14 |
오라클 업데이트, 딜리트 쿼리 (oracle update, delete query) (0) | 2008.08.13 |