select constraint_name, constraint_type, search_condition, r_constraint_name from user_constraints where lower(table_name) = lower( '&table_name');
제약조건의 컬럼까지 확인하는 쿼리
제약조건을 조합값에 걸때는 1번쿼리로는 어떤 컬럼의 조합값이 들어가있는지 확인하기 어렵다. 이때 사용할 수 있는 쿼리구문이다.
같은 제약조건명을 가진 컬럼명을 확인하면 된다.
1 2 3 4
//기본 select constraint_name, column_name from user_cons_columns where lower(table_name) = lower( '&table_name');
제약조건 타입과 조합값까지 함께 검색하는 쿼리
즉 1번과 2번을 join한 쿼리이고 개발자가 자주 사용하는 쿼리이다
1 2 3 4 5 6 7 8 9 10 11
col column_name format a15 col constraint_name format a15 col r_constraint_name format a20
select a.column_name, b.constraint_name, b.constraint_type, b.search_condition, b.r_constraint_name, c.table_name as parnet_table, a.column_name as parnet_column from user_cons_columns a join user_constraints b on a.constraint_name = b.constraint_name left outer join user_cons_columns c on b.r_constraint_name = c.constraint_name where lower(a.table_name) = lower('&table_name');