Constraint 5

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

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

2012.01.11 SQL 7일차(무결성제약조건 Constraint) ;N/N, PRIMARY KEY, FOREIGN KEY, UNIQUE KEY, CHECK, 관련 딕셔너리

무결성 제약조건(Constraint) ; 조건에 맞지않은 데이터는 입력되지 않게 하고, 맞는 데이터만 입력되게하는 제약조건 Constraint의 개념 : 데이터의 정확성과 일관성을 보장하기 위해 테이블 생성시에 각 칼럼에 대해 정의 하는 규칙을 의미 특징 1. 입력된 데이터가 조건에 맞나 검사해보기 떄문에 당연히 안쓴것보다는 속도가 저하 2. 규칙은 컬럼별로(컬럼별로 검문소를 하나씩 세운다고 생각하세요) 3. constraint 생성시 딕셔너리에 저장된다, (예 : user_constraints 테이블, user_cons_columns ) 4. 일시적으로 활성, 비활성할 수 있다. Constraint의 종류 1. NOT NULL : NULL이 아닌 값만 허용 2. Unique Key(고유키) : 중복되지..

Oracle/SQL 2012.01.11