Rumah  >  Artikel  >  pangkalan data  >  C++用OTL访问Oracle数据库的例子

C++用OTL访问Oracle数据库的例子

WBOY
WBOYasal
2016-06-07 15:18:321210semak imbas

在Windows平台,数据库的访问手段比较丰富,如ADO或者ODBC等,然而在UNIX/Linux平台上访问数据就不是那么容易了。 如果我们使用Java作为开发语言,那么JDBC可以提供数据访问的途径,但是如果用C/C++就没这么简单了,你必须使用最原始的C/C++调用接口来访问数

     在Windows平台,数据库的访问手段比较丰富,如ADO或者ODBC等,然而在UNIX/Linux平台上访问数据就不是那么容易了。 如果我们使用Java作为开发语言,那么JDBC可以提供数据访问的途径,但是如果用C/C++就没这么简单了,你必须使用最原始的C/C++调用接口来访问数据库。
       目前大型的数据库,如Oracel或者DB2都提供了C/C++的调用接口,但是作为开发人员使用这些接口是一件很头痛的事情,你必须要熟记每一个API,然而OTL给我带来了一个新的数据库访问方式。
      本文将通过一个例子来展示OTL是如何使用的。希望借此使得那些和我一样的OTL入门者少走一些弯路。

开发环境:Windows 2003 + Oracle 9i
开发工具:Dev C++  V 4.9.9.0

Oracle安装路径:C:/Oracle/

我们仅仅展示数据库的连接和释放。

 

首先,我们建立一个Dev C++项目,名为“OTL”

C++用OTL访问Oracle数据库的例子

在弹出的对话框中选择“Empty Project”
C++用OTL访问Oracle数据库的例子

接下来选择一个位置来保存工程文件
C++用OTL访问Oracle数据库的例子

 

之后,我们将向工程中添加我们的源代码文件,源代码文件如下:

#include
using namespace std;
#include

#define OTL_ORA9I // Compile OTL 4.0/OCI9i
#define OTL_ORA_TIMESTAMP // enable Oracle 9i TIMESTAMPs [with [local] time zone]
#include "otlv4.h" // include the OTL 4.0 header file

otl_connect db; // connect object


int
main()
{
    otl_connect::otl_initialize(); // initialize OCI environment 
    try
    {
        db.rlogon("scott/tiger@ORACLE9I"); // connect to Oracle 
        cout"Connect to Database"    }
    catch(otl_exception& p)
    { 
        // intercept OTL exceptions 
        cerr// print out error message 
        cerr// print out SQL that caused the error 
        cerr// print out SQLSTATE message 
        cerr// print out the variable that caused the error 
    }
 

    db.logoff(); // disconnect from Oracle

    return 0;
}

我们还需要将otlv4.h这个头文件添加到我们的工程中。

此时,我们需要设置一下头文件的路径和库文件的路径
C++用OTL访问Oracle数据库的例子

C++用OTL访问Oracle数据库的例子

此时,我们就可以编译并执行该程序了!

作者:http://allanyan.cnblogs.com/articles/105159.html

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn