EXCEPTIONS table 4

Constraint violated 시 어디서 에러가 났는지 보여주는 exceptions 테이블 사용예제

우선 desc exceptions 해보시고 테이블이 존재하지 않으면 SQL> @?/rdbms/admin/utlexcpt 에러가 나도 특정 쿼리를 써주지 않으면 exceptions 에 들어가지않습니다. SQL> alter table scott.ERR_CODE enable constraint ERR_CODE_CODE_PK; alter table scott.ERR_CODE enable constraint ERR_CODE_CODE_PK * ERROR at line 1: ORA-02437: cannot validate (SCOTT.ERR_CODE_CODE_PK) - primary key violated SQL> select rowid, code from scott.err_code 2 where rowid in(s..

Oracle/Admin 2012.03.02

참조키 걸려고 할때 부모컬럼의 자료와 자식컬럼의 자료가 맞지 않아서 이어지지 않는 경우 (; exception테이블, spool, vi로 파일비교 사용예제포함)

account 에 여러 자료 입력 후 account에서 다시 bcode(code)를 참조해서 참조키 연결 시 문제 SQL> insert into account(code) values('WOW'); commit; SQL> alter table account 2 add constraint account_code_fk 3 foreign key(code) 4 references bcode(code); add constraint account_code_fk * ERROR at line 2: ORA-02298: cannot validate (KOO.ACCOUNT_CODE_FK) - parent keys not found (이어지지 않습니다.) --> EXCEPTION table을 이용해봅시다. EXCEPTION t..

Flashback Constraint Issue ;Reference Key가 걸린 table 삭제(부모테이블 삭제)후 flashback으로 복구 시 관련 constraint 살펴보기

시나리오 1. BCODE table 생성 code : primary key name : not null ACCOUNT table 생성 code : bcode(code) 참조 ac_number opendate 2. 여러 자료들 입력 2-1. 제약조건 확인 3. bcode table 삭제 3-1. 제약조건 확인 4. flashback으로 bcode table 복구 후 제약조건 확인 5. 제약조건 조정 및 결론 1. 테이블 생성 SQL> create table bcode 2 (code varchar(5) constraints bcode_code_pk PRIMARY KEY, 3 name varchar(15) constraints bcode_name_nn not null); SQL> create table acc..

2012.01.27 Admin 8일차(1) (Constraints)

SQL에서 제약조건(constraints)관련 글을 보세요 ( http://gyh214.tistory.com/62 ) *Migration 설명과 마이그레이션시 주의사항(Constraint관련해서) 마이그레이션시 생각해볼 문제점 : 제약조건 AS-IS의 한 테이블이 1억행을 가지고 있는데, 그 중 한 컬럼이 NOT NULL CONSTRAINT가 설정되어 있습니다.. 이 컬럼의 값들은 보나마나 NULL인 값들이 없을 것입니다.(제약조건이 걸린채로 이때까지 데이터들이 입력되었으므로) 이럴때 TO-BE에 마이그래이션시 같은 테이블에 자료를 넣을때 NOT NULL제약조건이 필요가 있을까요? 괜히 NOT NULL제약조건이 있으면 import해서 자료가 넘어갈때마다 TO-BE쪽 테이블에서 제약조건을 검사하기때문에 속..

Oracle/Admin 2012.01.27