Database
-
Oracle CursorDatabase 2008. 9. 3. 11:25
Oracle Cursor 오라클 서버에 의해 실행되는 모든 SQL문은 연관된 각각의 커서를 소유하고 있다. 오라클 서버는 명령문의 구문을 분석한 뒤 메모리에 가져오는 행을 임시 저장하는데, 이 메모리 영역을 커서(Cursor)라고 한다. 즉, 커서는 Private SQL의 작업영역이다. 커서에는 암시적 커서(Implicit Cursor)와 명시적 커서(Explicit Cursor)가 있다. 우리가 사용하는 모든 SQL은 자동으로 커서를 사용하고 있으며, 이것을 암시적 커서라고 한다. 암시적 커서를 명명된 이름을 붙여 여러 용도로 사용할 수 있으며, 이것을 명시적 커서라고 한다. - 암시적 커서 : 모든 DML과 PL/SQL SELECT문에 대해 선언 - 명시적 커서 : 프로그래머에 의해 선언되며 이름이 ..
-
Oracle의 메모리 구조 - SGA(시스템 글로벌 영역)Database 2008. 9. 1. 16:22
SGA(System Global Area ; 시스템 글로벌 영역) - 오라클 서버의 메모리 영역의 하나로 모든 접속자가 공유하는 메모리 영역 - 파라미터 파일(initSID.ora)의 파라미터(large_pool_size, shared_pool_size 등)를 변경하여 지정할 수 있다. - 9i 버전부터 서버의 종료 없이 SGA_MAX_SIZE 파라미터 값 범위 내에서 SGA 구성을 동적으로 변경 가능 - 전체 SGA를 실제 메모리 크기가 허용하는 범위에서 가장 크게 잡으면 디스크 I/O를 줄이고 메모리에 가능한 많은 데이터를 저장할 수 있어 최적의 성능을 낼 수 있다. - SGA는 공유풀(Shared Pool), 데이터베이스 버퍼캐쉬(Database Buffer Cache), 리두로그 버퍼(Redo L..
-
Oracle의 메모리 구조Database 2008. 8. 28. 12:04
오라클 메모리 구조 : 오라클은 정보를 메모리와 디스크등에 저장 합니다. 가능하면 메모리에 원하는 정보가 있는 것이 훨씬 빠르고 효율적 입니다. - SGA (System Global Area) : 오라클 프로세스들이 접근하는 하나의 큰 공유 메모리 세그먼트(Share Pool, DataBase Buffer Cache, Redo Log Buffer, Java Pool, Large Pool) - PGA(Program Global Area) : 한 프로세스 혹은 스레드의 개별적인 메모리 공간으로 다른 프로세스와 스레드는 접근 불가, 사용자마다 공유하지 않고 개별적으로 사용. PGA(Program Global Area) ◈ PGA 개념 - 서버 프로세스에 생성되며 오라클에서 사용하는 메모리 영역 - 데이터베이스..
-
Oracle 함수Database 2008. 8. 28. 11:28
/* ORACLE 숫자함수 */-- MAX(char) - 하나 이상의 행으로부터 최대값 반환 SELECT MAX(salary) FROM employees WHERE job_id = 'IT_PROG'; -- MIN(char) - 하나 이상의 행으로부터 최소값 반환 SELECT MIN(salary) FROM employees WHERE job_id = 'IT_PROG'; -- ROUND(M, N) - M을 소수점 N+1 자리에서 반올림한 결과 반환 SELECT ROUND(3.141579, 3) "반올림 함수" FROM DUAL; -- POWER(M, N) - M에 N승 한 결과 반환 SELECT POWER(2, 10) "POWER 함수" FROM DUAL; /* ORACLE 문자함수 */ -- LENGTH(..
-
Pro-C 개요Database 2008. 8. 26. 16:09
I. 개요 오라클의 예비 컴파일러(precompiler)는 응용 프로그램 안에 직접 SQL문을 사용할 수 있게 해주는 도구이다. 예비 컴파일러는 소스 프로그램을 받아 들여 그 속에 삽읻(embed)된 SQL 문장을 표준 Oracle runtime library 호출로 바꾸어 수정된 프로그램 소스 코드를 생성한다. 사용자는 이 소스 코드를 일반적인 방법으로 컴파일하고, 링크하고, 수행한다. 오라클은 C와 C++을 위해 Pro*C/C++ 이라는 예비 컴파일러를 제공하며 일반적으로 삽입 SQL문이 포함된 소스 파일의 확장자는 “.pc”이다. 이 pc 파일을 예비 컴파일러를 통하여 컴파일 하면 C파일이 생성된다. Pro*C를 이용한 응용 프로그램의 개발 절차는 아래 그림과 같다. II. 환경 설정 Redhat ..
-
주민등록검사 PROCEDUREDatabase 2008. 8. 26. 15:36
주민등록검사용 PROCEDURE -------------------------------------------------------------------------------- CREATE OR REPLACE FUNCTION jumin (j_num IN VARCHAR2) RETURN NUMBER IS t_num varchar2(12) := '234567892345'; /* 주민등록번호 검사를 위한 가중치 */ b number; /* 주민등록번호 맨마지막자리수와 비교를 위한수 */ c integer; /* 주민등록번호의 맨마지막자리수 */ d integer; /* 계산결과를 나눠서 남은 나머지 */ i integer; /* t_num 의 값을 하나씩 잘라낸 수 */ j integer; /* j_num 의 ..
-
PL/SQL 메일발송 예제Database 2008. 8. 26. 15:33
Localhost에 SMTP Service가 살아 있어야 겠죠^^ -- PL/SQL 메일발송 예제 SQL> CREATE OR REPLACE PROCEDURE SEND_MAIL_TCP ( msg_from VARCHAR2 := 'mylife688@hanmail.net' , msg_to VARCHAR , msg_subject VARCHAR2 := 'E-Mail Test...' , msg_text VARCHAR2 := '' ) IS c UTL_TCP.CONNECTION; rc INTEGER; BEGIN c := UTL_TCP.OPEN_CONNECTION('localhost', 25); -- open the SMTP port 25 on local machine rc := UTL_TCP.WRITE_LINE(c, '..
-
Oracle Tip20 for DBADatabase 2008. 8. 24. 15:31
지난 27년 동안, 오라클은 코어 데이타베이스 제품 영역에서 눈부신 발전을 이루었습니다. 이제 오라클 데이타베이스는 업계에서 성능과 안정성이 가장 뛰어난 데이타베이스로 인정 받고 있을 뿐만 아니라, 엔터프라이즈 컴퓨팅을 위한 핵심 소프트웨어 인프라스트럭처 구성요소로서 자리매김하였습니다. 새로운 버전이 출시될 때마다 그 수를 세기 어려울 정도로 많은 신기능이 추가되었고, 개발자, IT 관리자, 심지어 숙련된 DBA조차도 어떤 기능을 먼저 활용해야 할지 몰라 고민하게 만들기도 했습니다. DBA들에게 있어, Oracle Database 10g는 지금까지 오라클에서 출시한 버전 중 가장 새롭고 의미 있는 제품이 될 것입니다. 조금만 시간을 투자해 새로운 테크놀로지를 활용하는 방법을 익힌다면, DBA 업무에 소요..