이 문서는 Oracle의 Pro*C/C++ Programmer's Guide 11g Release 2 (11.2) 문서를 참조하여 정리한 문서입니다.
Pro*C는 Java 등의 언어가 보편화되면서 사용빈도가 많이 떨어진 개발 tool입니다. 그러나 금융권(은행, 증권)과 통신사 등과 같이 빠른 응답속도를 요구하는 시스템에서는 C언어를 아직도 선호하고 있으며 C언어로 Oracle DBMS 사용한 Batch 프로그램을 개발하려면 Pro*C를 사용할 수 밖에 없습니다. Java 프로젝트와 잊을만하면 C언어 프로젝트가 반복되어 쉽게 훑어보기 위해서 정리하였습니다. C 프로젝트 시에 도움이 되길 바랍니다.
목차
Pro*C 2. DB 접속 해제 및 Commit / Rollback
참조 소스
첨부된 소스 파일은 Oracle에서 제공해주는 Pro*C 소스를 일반적인 SQLCA 오류처리 pattern으로 변경하였으며, 일부 모듈화 및 최근 버전의 C언어 규칙으로 변경하였습니다. 다운받아서 필요한 부분 Copy & Paste 하시기 바랍니다.
1. 단건 조회를 구조체 단위로 출력하는 Sample
2. 다건 조회시 출력을 구조체 단위로 데이터를 Fetch 하는 sample
3. 대량 데이터 조회를 Array로 조회하는 Sample
4. Dynamic SQL Method 1에 대한 Sample
5. Dynamic SQL Method 2에 대한 Sample
6. Dynamic SQL Method 3에 대한 Sample
7. Dynamic SQL Method 4에 대한 Sample
Dynamic SQL Method 4는 매우 복잡하여 원본 소스를 그대로 올렸습니다. Method 4는 일반 업무용 프로그램을 개발할 때에는 거의 사용되지 않으나, 시스템 공통 프로그램으로 가끔 사용하게 됩니다.(프로젝트마다 한번은 사용하게 되더군요.) Powerful 한 기능을 가지고 있으나 C언어의 2중 포인터를 잘 활용할 줄 알아야 하며, sqlplus와 같은 다목적 application을 만들려면 볼 필요가 있습니다.
(Select의 output type 설정시에 select_dp->T[i] = 1;는 output을 CHAR로 변환하라는 의미이며 이는 SPACE로 채워진 문자열이 되므로, 모든 데이터 타입을 select_dp->T[i] = 5;로 설정하여 Null-Terminated String으로 하는 것이 좋음)
'Oracle > Pro*C' 카테고리의 다른 글
Pro*C 7. Dynamic SQL (0) | 2019.09.25 |
---|---|
Pro*C 6. 대량처리 (배열처리) (0) | 2019.09.25 |
Pro*C 5-2. 오류 처리하기 (WHENEVER) (0) | 2019.09.25 |
Pro*C 5-1. 오류 처리하기 (SQLCA) (0) | 2019.09.25 |
Pro*C 4. 기본 SQL문 실행 (0) | 2019.09.25 |