본문 바로가기

전체 글810

Sequence Sequence - 자동적으로 순차적인 번호를 생성하고자 할 때 사용 : max 함수 쓰면 퍼퍼먼스, 락 문제가 발생한다. Sequence 사용하면 문제를 해결 - Table에 종속적이지 않음 - 기본 키를 생성할 때 주로 사용 - 메모리에 캐시 형태로 존재하면 Access 효율성을 높일 수 있음 - SEQUENCE 생성 CREATE SEQUENCE empno_seq INCREMENT BY 1 START WITH 1000 MAXVALUE 9999 NOCYCLE CACHE 10; - SEQUENCE 변경 ALTER SEQUENCE empno_seq CYCLE CACHE 20; - SEQUENCE 삭제 DROP SEQUENCE empno_seq; - 사용 INSERT INTO emp (empno, ename.. 2012. 3. 22.
View 관련된 Dictionary - View 관련된 Dictionary SELECT view_name, text_length, text FROM user_views; 2012. 3. 21.
In-Line View - 부서별최대 급여를 받는 사원 조회 SELECT e.ename, d.dname, m.sal FROM emp e, dept d, (SELECT deptno, MAX(sal) sal FROM emp GROUP BY deptno) m WHERE e.deptno = d.deptno AND e.sal = m.sal 2012. 3. 21.
사용편의, 수행속도향상, 융통성 있는 View - 사용편의를 위한 View CREATE VIEW v_emp_complex AS SELECT empno, ename, deptno, hiredate FROM emp WHERE (sal*comm) + 12 > 20000 AND deptno = 30 AND job = 'SALESMAN' AND sysdate - 365 + 10 > hiredate; SELECT * FROM v_emp_complex; - 한글 View CREATE VIEW 사원(사번, 성명, 부서번호, 입사일) AS SELECT empno, ename, deptno, hiredate FROM emp WHERE deptno = 30 - 수행속도 향상을 위한 View - 제일 큰 값을 구하여라! - HINT를 사용하였음 : 옵티미아저에게 힌트를 .. 2012. 3. 21.
보안관리를 위한 View - 함수로 가공된 view는 인서트 업데이트가 안된다. CREATE VIEW v_emp (empno, ename, job, mgr, hiredate, deptno) AS SELECT NVL(empno, null), ename, job, mgr, NVL(hiredate, null), deptno FROM emp WHERE job = 'MANAGER'; - 연산결과만 제공하고 알고리즘을 숨긴다. CREATE VIEW v_emp (empno, ename, annual_sal) AS SELECT empno, ename, (sal + NVL(comm,0))+12 annual_sal FROM emp; - VIew 자체를 read only로 만든다. CREATE VIEW v_emp (empno, ename, annu.. 2012. 3. 21.
View 생성, 변경 및 제거 CREATE VIEW v_emp (empno, ename, job, mgr, hiredate, deptno) AS SELECT empno, ename, job, mgr, hiredate, deptno FROM emp WHERE job = 'MANAGER'; CREATE OR REPLACE VIEW v_emp (empno, ename, job, mgr, hiredate, deptno) AS SELECT empno, ename, job, mgr, hiredate, deptno FROM emp WHERE job = 'SALESMAN'; DROP VIEW v_emp; 2012. 3. 21.