본문 바로가기

ProC

Pro*C 어플리케이션의 작성

Pro*C 어플리케이션의 작성

어플리케이션의 구조

EXEC SQL BEGIN DECLARE SECTION;
바인드 변수 선언
EXEC SQL END DECLARE SECTION;
EXEC SQL INCLUDE "sqlca.h"
main(){
EXEC SQL CONNECT :username IDENTIFIED BY :password;
Embedded SQL문
작업
EXEC SQL COMMIT WORK;
또는 EXEC SQL ROLLBACK RELEASE;
}

BEGIN DECLARE SECTION

바인드 변수를 선언하는 부분이다.

이 영역에 선언한 변수만 SQL문에 사용할 수 있었으나 현재에는 어디서라도 바인드변수를 선언하고 사용할 수가 있다.

Pro*C 2.XX 대부터는 이영역이 의미가 없어졌다.

EXEC SQL END DECLARE SECTION;

바인드 변수영역을 종료하는 명령이다.

EXEC SQL INCLUDE “sqlca.h”

SQL Communication Area 를 포함하는 부분이다현재의 버젼에서는 sqlca.h를 일반 C문법에서 처럼 #include <sqlca.h>로 선언 할 수 있다

proc컴파일시

proc iname=sample1.pc include=$ORACLE_HOME/ product/7.3.3/precomp/public

cc컴파일시

cc -o sample1 sample1.c -I/$ORACLE_HOME/ product/7.3.3/precomp/public

를 주어 include화일의 위치를 명시해야 한다

EXEC SQL CONNECT :username IDENTIFIED BY :password;

오라클과 연결하는 부분이다username과 password는 bind변수로 선언되어 있어야 한다

Embedded SQL문

실제적인 작업 부분이 여기에 들어간다어떤 SQL문도 여기에 올 수 있다

EXEC SQL COMMIT WORK; 또는 EXEC SQL ROLLBACK RELEASE;

트랜잭션을 종료하고 오라클로 접속을 종료하는 명령이다.

COMMIT WORK 변경된 데이타를 확정한다 ROLLBACK 변경된 데이타를 되돌린다

'ProC' 카테고리의 다른 글

PCC-S-02015, unable to open include file  (0) 2011.10.16
ORA-01405: fetched column values is NULL  (0) 2011.10.16
Pro*C 컴파일  (0) 2011.10.16
Dynamic SQL의 사용  (0) 2011.10.16
SQLCA(SQL Communication Area)  (0) 2011.10.16