Database
-
PRO*C에서 PLSQL PROCEDURE에 HOST ARRAY BINDING하는 방법Database 2008. 9. 20. 22:38
PRO*C에서 PLSQL PROCEDURE에 HOST ARRAY BINDING하는 방법 ======================================================= proc*c안에서 PL/SQL stored procedures로 host arrays를 넘기는 방법을 알아봅니다. sample program 실행하는 방법. 1. 먼저 pl/sql package를 만듭니다. sqlplus scott/tiger @pkg.sql 2. 만든 package를 test해 봅니다. sqlplus scott/tiger @harness.sql 3. testit.pc를 compile합니다. make -f $ORACLE_HOME/precomp/demo/proc/demo_proc.mk build EXE=t..
-
ERWin 사용 방법Database 2008. 9. 11. 11:53
1.ERwin 실행 ERWin을 설치 한 후, 시작 -> 프로그램 -> Computer Associates -> ERWin 을 선택하여 ERwin을 실행 한다. ERwin 초기 화면이 나타나는데 ‘Create a new model’옵션 버튼을 선택하 고 OK버튼을 누르면 Create Model 대화상자가 나타나게 되고 여기서 세번째 옵션 버튼인 Logical/Physical옵션 버튼을 선택한다. 기존 ERwin파일을 열고자 한다면 ‘Open an existing file’옵션 버튼을 선택한다. 그런 다음 Create Model대화상자에서 모델의 유형으로 Logical/Physical옵션 버튼을 선택한 뒤 폼 아래 부분에 개발 대상 데이터 베이스를 선택. 그런 다음 OK를 누르면 ERWin 메인 화면이 나..
-
국산 DBMS 공공분야 기간계시스템 도입 확산Database 2008. 9. 10. 08:29
알티베이스, 근로복지공단·국방부·서경대 등 ‘알티베이스5’ 공급 외산 DBMS들의 성역처럼 여겨지던 기간계시스템에 국산 DBMS의 도입이 확대되고 있다. 국산 DBMS 대표 주자인 알티베이스(대표 김기완 www.altibase.com)의 최근 발표에 따르면, 공공·국방·교육 분야의 기간계시스템에 하이브리드 DBMS ‘알티베이스 5(ALTIBASE 5)’를 다수 공급한 것으로 나타났다. 알티베이스의 선전은 그동안 적용 사례, 인지도 등의 열세로 인해 단위 업무 위주로 제한적으로 적용돼 왔던 국산 DBMS들의 기간계시스템 진출을 도모하는 단초로 작용하리라는 기대감으로 나타나고 있다. 특정 DBMS 벤더 종속성이 유독 강하고, 보수적인 구매 패턴을 보여온 공공 국방 교육 분야에서 적용 사례를 확보한 만큼 알티..
-
ROWNUM을 이용한 페이지네이션Database 2008. 9. 3. 15:16
ROWNUM을 이용한 페이지네이션 - 결과 셋의 로우 N 에서 로우 M까지를 가져오기 위해 ROWNUM을 사용 - 일반적인 형식 SELECT * FROM ( SELECT a.*, ROWNUM rnum FROM ( your_query_goes_here, with order by ) a WHERE ROWNUM = :MIN_ROW_TO_FETCH; → :MAX_ROW_TO_FETCH는 결과 셋에서 가져올 마지막 로우로 설정, 결과 셋에서 50 번째 ~ 60 번째 로우만을 가져오려 한다면 이 값은 60이 된다. → :MIN_ROW_TO_FETCH는 결과 셋에서 가져올 첫 번째 로우로 설정, 결과 셋에서 50 번째 ~ 60 번째 로우만을 가져오려 한다면 이 값은 50이 된다. - 사용 예 SELECT num, n..
-
ROWNUM의 동작 원리와 활용 방법Database 2008. 9. 3. 15:01
ROWNUM의 동작 원리 - ROWNUM은 쿼리 내에서 사용 가능한 (실제 컬럼이 아닌) 가상 컬럼(pseudo column) - ROWNUM에는 숫자 1, 2, 3, 4, ... N의 값이 할당, 여기서 N 은 ROWNUM과 함께 사용하는 로우의 수를 의미 - ROWNUM 값은 쿼리의 조건절이 처리되고 난 이후, sort, aggregation(GROUP BY)이 수행되기 이전에 할당 - ROWNUM 값은 할당된 이후에만 증가(increment)될수 있다. - 처리 순서 1. FROM/WHERE 절이 먼저 처리 2. ROWNUM이 할당되고 FROM/WHERE 절에서 전달되는 각각의 출력 로우에 대해 증가(increment) 3. SELECT가 적용 4. GROUP BY 조건이 적용 5. HAVING이 ..
-
쿼리를 자바코드로 변환[Toad-Make Code Statement]Database 2008. 9. 3. 14:48
기준 버전 - Toad for Oracle 9.0 View > Toad Options > Editor > Code Assist 의 MakeCode 탭에서 Java 선택 쿼리를 입력하고 Editor > Make Code Statement (단축키 Ctrl + m) 를 실행, 다른 에디터에서 붙여넣기 "SELECT a.empno, a.ename, a.job, b.deptno, b.dname " + "FROM emp a, dept b " + "WHERE a.deptno = b.deptno AND a.sal >= 2000 " 위와 같은 자바코드가 생성된다.
-
오라클 - 시퀀스(SEQUENCE)Database 2008. 9. 3. 14:19
ORACLE SEQUENCE - 유일(UNIQUE)한 값을 생성해주는 오라클 객체 - 시퀀스를 생성하면 기본키와 같이 순차적으로 증가하는 컬럼을 자동적으로 생성할 수 있다. - 시퀀스는 테이블과 독립적으로 저장되고 생성된다. 따라서 하나의 시퀀스를 여러 테이블에서 사용할 수 있다. 시퀀스 생성 문법[Syntax] CREATE SEQUENCE sequence_name [START WITH n] -- n은 시퀀스 시작 값 지정 [INCREMENT BY n] -- n은 시퀀스 증가 값 지정 [MAXVALUE n | NOMAXVALUE] -- 시퀀스 최대값, NOMAXVALUE는 무한대 [MINVALUE n | NOMINVALUE] -- 시퀀스 최소값, NOMINVALUE는 무한대 [CYCLE | NOCYCLE..
-
PL/SQL SQLCODE, SQLERRMDatabase 2008. 9. 3. 13:47
WHEN OTHERS문으로 트랩(Trap)되는 오류들의 실제 오류 코드와 설명을 볼때 사용한다. - SQLCODE : 실행된 프로그램이 성공적으로 종료하였을때는 오류번호 0을 포함하며, 그렇지 못 할 경우에는 해당 오류코드 번호를 포함한다. - SQLERRM : SQLCODE에 포함된 오라클 오류 번호에 해당하는 메세지를 가진다. SQLCODE Value Description 0 오류 없이 성공적으로 종료 1 사용자 정의 예외 번호 +100 NO_DATA_FOUND 예외 번호 음수 위에 것을 제외한 오라클 서버 에러 번호 SQLCODE, SQLERRM 예제 프로시저 SQL> CREATE OR REPLACE PROCEDURE Errcode_Exception (v_deptno IN emp.deptno%typ..