# PROC 사용을 위한 선언
EXEC SQL INCLUDE SQLCA
# 호스트 변수 선언 방법 1 (.c 파일에서 사용)
EXEC SQL BEGIN DECLARE SECTION;
/* variable_declarations */
EXEC SQL END DECLARE SECTION;
# 호스트 변수 선언 방법 2 (.h파일에서 사용)
#ifdef SESC_DECLARE
/* variable_declarations */
#endif
#호스트 변수 제한사항
# 기본구조 1 (select)
EXEC SQL BEGIN DECLARE SECTION;
호스트 변수 선언
EXEC SQL END DECLARE SECTION;
char szQuery에 Query문 정의
// char타입의 Query문을 SQL Query타입으로 변환
EXEC SQL PREPARE QUERY1 FROM :szQuery;
// Query문 실행
EXEC SQL DECLARE QNAME1 CURSOR FOR QUERY1;
// USING을 통한 호스트 변수는 PREPARE 문에서 ?에 해당하는 위치에 대응된다.
EXEC SQL OPEN QNAME1 USING: 호스트변수;
// FETCH문을 통해서 결과값을 받음
EXEC SQL FETCH QNAME1 INTO :호스트변수1 :호스트변수 2;
EXEC SQL CLOSE QNAME1;
# 기본구조 2 (insert)
char QueryStme[4096];
// host변수 초기화 및 내용 카피
INITSTR(hostvar1);
strcpy(hostvar1, copyvar);
// Query변수 초기화
memset(QueryStmt, 0x00, 4096);
sprintf(QueryStmt, "insert into table where field1='%s' and field2='%s'", hostvar1, hostvar2);
EXEC SQL EXECUTE IMMEDIATE :QueryStmt;
// 트랙잭션 확정, 실패라면 EXEC SQL ROLLBACK RELEASE;
EXEC SQL COMMIT WORK;
'Devlopment > C,C++,Ruby,Python' 카테고리의 다른 글
PROC, ORACLE에 Query문에서 공백문자 처리 (0) | 2009.04.06 |
---|---|
C Comment (1) | 2009.03.31 |
RPOC 조건구문 (1) | 2009.03.24 |
C언어 문자열 변환 - char형 int형 (0) | 2009.03.03 |
time 관련 (0) | 2009.03.02 |
[Ruby on Rails] 라우팅 설정 (0) | 2008.07.22 |
[Ruby on Rails] 레일스의 철학 & 네이밍 규칙 (0) | 2008.07.22 |
C++ 기본 형태 (0) | 2008.06.25 |
C 기본 형태 (0) | 2008.06.25 |
[Ruby on Rails] 레일스 플러그인 (0) | 2008.06.25 |