학원수업 자료2009. 11. 5. 16:43
SQL(Structured Query Languge)
에러확인>
  - 에러번호의 내용을 확인 할 수 있다.
EXPERT> !oerr ora 에러번호
GRANT>
  - 권한 부여에 관련된 명령어
1. System 권한 상속
  - 권한 부여 시 with admin option을 준 경우, 권한을 받은 user은 자신이 받은 권한에 한에서 다른 user에게 권한을 부여할 수 있다.
  - 자신이 받은 권한을 revoke 당한 경우에도 자신이 줬던 권한을 받은 다른 user는 그 권한을 사용할 수 있다.
2. Object(객체) 권한 상속
  - 권한 부여 시 with grant option을 준 경우, 권한을 받은 user는 자신이 받은 권한에 한에서 다른 user에게 권한을 부여할 수 있다.
  - 자신이 받은 권한을 revoke 당한 경우 자신이 줬던 권한을 받은 다른 user의 권한도 revoke되어 사용할 수 없다.
ALTER>
1. column 삭제
  - 물리적 삭제 : drop column을 사용하면 물리적으로 삭제 된다.
  - 논리적 삭제 : set unused를 사용하면 놀리적으로 삭제 된다.
 ※ 물리적/논리적 삭제가 필요한 이유
   -> 물리적 삭제의 경우 삭제를 하면 해당 행에 대해 rock이 걸려 업무 시 방해가 많이 된다.
   -> 따라서 기본적으로 왠만하면 업무중에 column을 삭제를 하지 않고 삭제를 할 경우 논리적 삭제를 먼저 한 뒤 업무 종료 후 물리적삭제를 사용하는 것이 좋다
제약조건 추가>
  - 제약조건 추가 시 add를 사용하지만 not null은 modify를 사용한다.
  - 제약조건은 추가 및 삭제만 가능하다.
1. 형식
alter table <table_name>
add [constraint <constraint_name>]
type (<column_name);
제약조건 검사방법>
  - 일반적으로 제약조건은 자료가 입력될 때 바로 검사한다.
  - 제약조건을 지연검사로 변경한 경우 자료 입력 시 모두 입력받고 commit 후 모든 column을 한번에 검사한다
  - 만약 하나라도 위반을 발견한 경우 모두 callback 시킨다.
함수기반 인덱스>
  - 인덱스 생성 시 함수를 삽입하여 생성할 수 있다.
  - 단, 인덱스 생성 시 삽입했던 함수로만 인덱스를 검색해야 한다.
  -  만약 다른 함수로 인덱스를 검색하는 경우 full-scan으로 검색한다.
1. 형식
create index upper_dept_name_idx
on dept2(upper(department_name));
External tables>
  - file의 내용을 table 처럼 select 할 수 있음.
  - File의 내용을 Table에 Load/Unload할 수 있음.
   -> Load : 파일 내용을 table로 불러옴
   -> Unload : table로 불러온 내용을 file로 보냄.
1. 특징
  - 읽기 전용
  - DML 사용 못함
  - Index 생성 못함
  - 쿼리는 사용 가능
Top-N 구문>
  - 컬럼의 값 중 n개의 가장 큰 값 또는 작은 값을 질의한다.
  - from 절 안의 서브 쿼리로 작성한다.
1. 사용방법
  - 데이터를 정렬하는 질의를 서브쿼리나 inline 뷰로 생성.
2. 필수요소
  - rownum(Row 순서를 나타내는 가상컬럼)
  - From절 상의 서브쿼리(Inline View)
  - Sub query 내에 order by절
  - 사용가능한 비교연산자 : <, <=
명시적 Default 기준>
  - Table 생성 시 default 값을 설정한 경우 insert할 때 값을 넣지 않으면 default 값이 입력 됨.
MERGE>
  - 조건에 따라 insert와 Update를 실행한다.
Flashback versions query>
  - 특정 시점을 비교하여 객체 및 행 data의 이력(aging)을 확인하는 방법
  - Or transaction의 이력(aging) 확인.
GROUP BY>
1. 각 Operator를 삽입하면 해당 개수의 column이 조회된다.
  - Rollup : n + 1
  - Cube : 2의 n승
※ n은 컬럼수
2. groupping set
  - 여러 개의 group by를 하나로 묶어서 작성
계층화 쿼리>
1. Operator
  - Level : 계층적 질의문에서 검색된 결과에 대한 계층별로 레벨 표시
  - Start with : 계층적인 출력 형식을 표현하기 위한 최상위 행
   -> 조건 삽입 시 서브 쿼리도 가능함
  - Connect By prior :  계층 관계의 데이터를 지정하는 컬럼
2. 형식
column org_chart format a15;
select lpad(' ', 3*level-3) || ename as org_chart,
level, empno, mgr, deptno
from emp
start with mgr is null
connect by prior empno = mgr;
3. 특징
  - Oracle 전용 Query

Posted by 쿵캉켕