`
shenzhw
  • 浏览: 61727 次
  • 性别: Icon_minigender_1
  • 来自: 福州
文章分类
社区版块
存档分类
最新评论

PRO*C入门实例

 
阅读更多
linux下编译命令:
将PC编译成C:proc parse=none iname=main.pc
将C编译成可执行文件:gcc -g -o main main.c -I$ORACLE_HOME/precomp/public -L$ORACLE_HOME/lib -lclntsh

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

void sql_error(char *msg) 
{ 
printf("\n%s %s\n", msg,(char *)sqlca.sqlerrm.sqlerrmc); 
EXEC SQL ROLLBACK RELEASE; 
exit(0);
}

int main() {

EXEC SQL INCLUDE sqlca;
EXEC Oracle OPTION (RELEASE_CURSOR = YES);
EXEC SQL WHENEVER SQLERROR DO sql_error(" ");

EXEC SQL BEGIN DECLARE SECTION;
VARCHAR oraCN[30];
VARCHAR consName[256];
EXEC SQL END DECLARE SECTION;

strcpy(oraCN.arr,"eic3/eic3@cjdb");
oraCN.len = strlen(oraCN.arr);
oraCN.arr[oraCN.len]='\0';

EXEC SQL CONNECT :oraCN;
printf("[OK Connected!]\n");

EXEC SQL select cons_name into :consName from c_cons where cons_id=10000;
consName.arr[consName.len]=0x00;
printf("%s\n",consName.arr);
EXEC SQL COMMIT WORK RELEASE;
return 0;

}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics