본문 바로가기

C-Language/Pro C, DB Connect

Pro C, DB Connection Example

Pro*C, Oracle 10g, Visual Studio 2008 Express Edition

가장 간단한 Pro*C 예제
Host 변수 선언 및 오라클 접속, sqlca를 이용한 접속결과 확인

#include <stdio.h>
#include "sqlca.h"

int main(void) {

/* Host 변수 선언 */ 
EXEC SQL BEGIN DECLARE SECTION;
  char *connstr = "scott/ojtit@orcl";
 EXEC SQL END DECLARE SECTION;
 
 /* 오라클에 연결 */
 EXEC SQL CONNECT :connstr;
 
 /* 접속결과 확인 */
 if(sqlca.sqlcode == 0)
 {
  printf("오라클 연결 성공\n");
 }else{
  printf("오류 : 오라클 연결 실패\n");
 }
 
 /* 작업을 취소하고 접속을 해제한다 */
 EXEC SQL ROLLBACK WORK RELEASE;

 printf("프로그램 종료\n");
 return 0;
 
}


Host  변수 : C언어 문법으로 선언하여 Embeded SQL문장에서 사용할 수 있는 변수
Host 변수는 다음과 같은 선언부 내에 선언해야 한다.

EXEC SQL BEGIN DECLARE SECTION;
EXEC SQL END DECLARE SECTION;

Host 변수로 선언할 수 있는 자료형의 종류
char                :  문자
char[n]           : 문자열
short
int
long
float
double
VARCHAR[n]  : 가변문자열, Pro C 에 의해서 구조체로 변환되어 arr(배열), len(배열의 크기) 멤버를 갖는다


 
VARCHAR username[20];
                 
struct
{
    unsigned short len;
    unsigned char arr[20];
} username;