一、提要
    ProC是Oracle数据库提供的开发接口,支持多种语言。ProC虽然调试维护起来十分不便,但是依靠其结构化清晰的嵌入式SQL,也成为了C/C++语言访问控制数据库的常用方式。
    本文首先介绍Windows平台下,使用Visual C++ 6.0 和 Visual C++ .Net配置ProC的开发环境。 
二、数据库环境
    确认安装了组件,Oracle - Application Development - Pro C-C++ 。有时在Oracle自带的组件工具中显示已安装,但在文件菜单和文件夹无相应组件,解决方法就是重装。 
三、使用示例文件
  sqlmain.c (扩展名是无所谓的)
  ---------------------------------------------- 
  #include "sqlca.h"
  #include <stdio.h>
  #include <string.h>
  #include <stdlib.h>
  
  //显示意外错误
  void sql_error(char *msg) 
  { 
   printf("\n%s %s\n", msg,(char *)sqlca.sqlerrm.sqlerrmc); 
   EXEC SQL ROLLBACK RELEASE; 
   exit(0);
  } 
  
  void main() {
  
  EXEC SQL INCLUDE sqlca;
  EXEC ORACLE OPTION (RELEASE_CURSOR = YES);
  EXEC SQL WHENEVER SQLERROR DO sql_error(" <ERROR> ");
  
  EXEC SQL BEGIN DECLARE SECTION;
  VARCHAR oraCN[30]; bbs.bitsCN.com 
  EXEC SQL END DECLARE SECTION;
  
  strcpy(oraCN.arr,"system/sys@unixdb");
  oraCN.len = strlen(oraCN.arr);
  oraCN.arr[oraCN.len]='\0';
  
  EXEC SQL CONNECT :oraCN;
  printf("\n [OK Connected!] ");
  
  }  
  使用Pro C-C++编译成C语言文件,成功后会提示绿色的"√":
  
  source.c  (文件比较长,不在此列出)  
四、Visual C++ 6.0
    1.New Project -> Win32 Console Application 即新建一个空控制台项目
    
    2.加入编译后的source.c文件
    
    3.在 Tools -> Options -> Directories 添加ProC的lib目录和include目录。
    
     本机目录使用如下:
     
     Library Files 
     
     E:\ORACLE\ORA92\PRECOMP\LIB
     
     Include Files
     
     E:\ORACLE\ORA92\PRECOMP\PUBLIC
     
   4.在 Project -> Settings -> Link 的 Object/Library modules 中添加ProC的链结文件orasql9.lib,VC会在Project Options自动更新。
     
   5.编译运行
   
     输入错误密码提示:
    <ERROR>  ORA-01017: invalid username/password; logon denied 
      连接成功提示:
    [OK Connected!] bitsCN~com 
五、Visual C++ .Net [bitsCN_com]
    1.新建项目 -> Visual C++ -> Win32 -> 控制台 即新建一个空控制台项目
    
    2.加入编译后的source.c文件
    
    3.工具 -> 选项 -> 项目 -> VC++ 目录 添加ProC的lib目录和include目录。
    
     本机目录使用如下:
     
     库文件
     
     E:\ORACLE\ORA92\PRECOMP\LIB
     
     头文件
     
     E:\ORACLE\ORA92\PRECOMP\PUBLIC    
     
   4.选中项目 -> 属性 -> 配置属性 -> 链结器 -> 输入 -> 附加依赖项 添加ProC的链结文件orasql9.lib
    
    
   5.编译运行
   
     输入错误密码提示:
    <ERROR>  ORA-01017: invalid username/password; logon denied 
 
      连接成功提示:
    [OK Connected!]
    
    
六、总结 
 
    本文只是使用了数据库连接的简单例子,具有实际参考意义的例子可参看:
    《ProC动态SQL示例(第1,2,3种方法)》
    http://blog.csdn.net/liwei_cmg/archive/2006/05/29/759963.aspx
    
    另外,这方面的教程也很多可以上网搜索一下。在E:\oracle\ora92\precomp\demo\proc也有很多具体实例,十分值得参考,在下文将介绍ProC在Unix/Linux环境下的配置使用。
评论 {{userinfo.comments}}
{{child.content}}

                                    
                                    
                                    {{question.question}}
提交