Pro*C는 Oracle 데이터베이스와 C 프로그래밍 언어를 결합하여 고급 데이터베이스 응용 프로그램을 개발하는 데 사용되는 도구입니다. 본 글에서는 Pro*C 개발 환경을 설정하는 방법, 즉 Oracle Instant Client 설치, Pro*C 컴파일러 설정, 그리고 통합 개발 환경(IDE) 통합 과정에 대해 자세히 알아보겠습니다.
1. Oracle Instant Client 설치
Oracle Instant Client는 Oracle 데이터베이스에 연결하기 위한 경량화된 라이브러리 세트입니다. Pro*C를 사용하기 위해서는 먼저 Oracle Instant Client를 설치해야 합니다.
1.1 Oracle Instant Client 다운로드
Oracle Instant Client는 Oracle 공식 웹사이트에서 다운로드할 수 있습니다. 다음 단계를 따라 다운로드합니다:
- Oracle Instant Client 다운로드 페이지에 방문합니다.
- 사용 중인 운영 체제에 맞는 패키지를 선택합니다 (Windows, Linux 등).
- zip 파일을 다운로드합니다.
1.2 Oracle Instant Client 설치
다운로드한 zip 파일을 다운로드한 디렉토리에서 압축 해제합니다. 아래는 Windows 운영 체제의 경우입니다:
unzip instantclient-basic-windows.x64-19.8.0.0.0dbru.zip
압축을 해제한 디렉터리에서 Oracle Instant Client의 파일들을 확인할 수 있습니다. 이 디렉토리를 시스템 PATH 환경 변수에 추가합니다. 환경 변수를 설정하는 방법은 다음과 같습니다:
- 내 PC에서 마우스 오른쪽 버튼을 클릭하고 ‘속성’을 선택합니다.
- ‘고급 시스템 설정’을 클릭합니다.
- ‘환경 변수’ 버튼을 클릭합니다.
- ‘시스템 변수’ 섹션에서 ‘Path’를 찾아 선택한 후 ‘편집’을 클릭합니다.
- Oracle Instant Client의 경로를 추가합니다. 예:
C:\oracle\instantclient_19_8
- 모든 창을 ‘확인’ 클릭으로 닫습니다.
2. Pro*C 컴파일러 설정
Oracle Instant Client가 설치된 후, Pro*C 컴파일러를 설정해야 합니다. Pro*C 컴파일러는 SQL, C 코드 및 명령을 오라클이 이해할 수 있는 형식으로 변환하는 도구입니다.
2.1 Pro*C 설치하기
Pro*C는 Oracle Database Client와 함께 제공됩니다. 그러므로 Oracle Instant Client를 설치한 목적은 Pro*C가 제대로 작동할 수 있는 기반을 마련하기 위함입니다. Pro*C를 사용하기 위해서는 Oracle Database Client가 시스템에 설치되어 있어야 합니다.
2.2 Pro*C 컴파일러 실행하기
Pro*C 컴파일러를 실행하려면 다음 절차를 따릅니다:
- Pro*C 소스 파일(.pc)을 생성합니다. 예:
sample.pc
- 다음 명령어를 사용하여 Pro*C 프리 프로세서를 실행합니다:
proc iname=sample.pc oname=sample.c
이 명령은 sample.pc
파일을 처리하여 C 소스 파일 sample.c
를 생성합니다.
2.3 C 컴파일러 실행하기
생성된 C 파일을 컴파일하기 위해서는 gcc 또는 Visual Studio의 C 컴파일러를 사용할 수 있습니다. 예를 들어, gcc를 사용할 경우 다음 명령어를 입력합니다:
gcc sample.c -o sample -I/path/to/oracle/includes -L/path/to/oracle/libs -lclntsh
여기서 -I
옵션은 Oracle 라이브러리의 헤더 파일 경로, -L
는 라이브러리 파일 경로, -lclntsh
는 Oracle 클라이언트 라이브러리를 링크하는 옵션입니다.
3. IDE 통합
IDE를 사용하면 Pro*C 프로그램을 더 편리하게 개발할 수 있습니다. 여기서는 Visual Studio와 Eclipse에서 Pro*C를 사용하는 방법을 설명합니다.
3.1 Visual Studio에서 Pro*C 설정하기
Visual Studio에서 Pro*C를 설정하려면 다음 단계를 수행합니다:
- Visual Studio를 열고 새 프로젝트를 만들거나 기존 프로젝트를 엽니다.
- 프로젝트 속성 창에서 ‘VC++ 디렉터리’를 클릭합니다.
- ‘포함 디렉터리’에 Oracle Instant Client의 포함 디렉터리를 추가합니다.
- ‘라이브러리 디렉터리’에도 Oracle Instant Client의 라이브러리 경로를 추가합니다.
- 링크하는 라이브러리 목록에
oci.lib
를 추가합니다.
모든 설정을 마쳤다면, Pro*C 소스 코드를 작성하고 빌드를 수행합니다.
3.2 Eclipse에서 Pro*C 설정하기
Eclipse IDE에서 Pro*C를 설정하는 과정은 다음과 같습니다:
- Eclipse를 열고 새 C/C++ 프로젝트를 생성합니다.
- 메뉴에서 ‘Project’ -> ‘Properties’로 이동합니다.
- ‘C/C++ Build’ -> ‘Settings’를 선택합니다.
- ‘Tool Settings’ 탭에서 ‘GCC C Compiler’를 선택합니다.
- 구성된 인클루드 경로와 라이브러리 경로를 추가합니다.
- 링커 설정에
-lclntsh
를 추가합니다.
그런 다음 Pro*C 소스 코드 파일을 작성하고 프로젝트를 빌드하여 실행합니다.
4. Pro*C 개발 환경 확인하기
응용 프로그램 개발을 시작하기 전에 설정한 개발 환경이 정상적으로 작동하는지 확인해야 합니다. 간단한 Pro*C 프로그램을 생성하여 이를 테스트합니다.
4.1 간단한 Pro*C 예제
다음은 Pro*C의 간단한 예제입니다:
/* sample.pc */
#include <stdio.h>
#include <sqlca.h>
EXEC SQL BEGIN DECLARE SECTION;
char user[20];
char passwd[20];
EXEC SQL END DECLARE SECTION;
int main() {
EXEC SQL CONNECT :user IDENTIFIED BY :passwd;
if (sqlca.sqlcode != 0) {
printf("Failed to connect: %s\n", sqlca.sqlerrm.sqlerrmc);
return 1;
}
printf("Connected to Oracle Database successfully!\n");
EXEC SQL COMMIT WORK;
EXEC SQL DISCONNECT;
return 0;
}
위 예제는 사용자로부터 DB 계정 정보를 받아 Oracle 데이터베이스에 연결하고 성공적으로 연결되었음을 출력하는 코드입니다.
4.2 컴파일 및 실행
위의 소스를 sample.pc
로 저장한 후, 다음 단계를 통해 컴파일하고 실행합니다:
proc iname=sample.pc oname=sample.c
gcc sample.c -o sample -I/path/to/oracle/includes -L/path/to/oracle/libs -lclntsh
./sample
프로그램을 실행하면 데이터베이스에 성공적으로 연결되었다는 메시지가 출력됩니다.
맺음말
이 글에서는 Pro*C 개발 환경 설정 방법에 대해 설명했습니다. Oracle Instant Client 설치부터 Pro*C 컴파일러 설정, IDE 통합 과정을 자세히 살펴보았습니다. 문서에 설명된 대로 단계별로 진행하면 Pro*C를 사용하여 데이터베이스 중심의 응용 프로그램을 개발할 수 있는 강력한 환경을 구축할 수 있습니다. Pro*C를 사용한 개발은 Oracle 데이터베이스와 C 언어의 강점을 결합하여 효율적이고 강력한 애플리케이션을 작성할 수 있게 도와줍니다. 성공적인 프로그래밍을 기원합니다!