linux otl 连接数据库

来源:互联网 发布:ipv4 ipv6无网络权限 编辑:程序博客网 时间:2024/05/22 01:58

otl接口实现和编译过程中,由于对宏定义什么的不太懂,所以花费了较长的时间,这只是简单实现otl与数据库连接但没有任何操作的例子,记下,回头忘了可以来看下。

首先在linux环境命令下输入命令:>>vi .bash_profile

输入相应语句使其为:

# .bash_profile


# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi


# User specific environment and startup programs


ORACLE_BASE=/oracle/product/10.2.0/db_1; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE; export ORACLE_HOME


LD_LIBRARY_PATH=.:../commonlib:$ORACLE_HOME/lib:$LD_LIBRARY_PATH:/opt/ldap/lib:/usr/lib:/usr/local/lib:/home/tangyf/HSBOSS/IT_CODE/007.HCNBOSS/21.cpp/dev/lib; export LD_LIBRARY_PATH
LIBPATH=$ORACLE_HOME/lib:/usr/lib/:/usr/local/lib:$LIBPATH; export LIBPATH


export ORACLE_BASE ORACLE_HOME ORACLE_SID ORACLE_TERM LD_LIBRARY_PATH


PATH=$PATH:/usr/bin:/usr/local/bin/:/bin:/etc:/usr/sbin:.:${HOME}/shell:${HOME}/tool:$ORACLE_HOME/bin
export PATH


export LLOGTIMEZONE=1
PS1="[\`pwd\`]$"
export PS1

写完保存之后,输入命令:>>source .bash_profile,若没报错,说明可以用了。

这是连接数据库大代码:

#include <iostream>
using namespace std;
#define OTL_ORA10G
#include "otlv4.h"


otl_connect db;
int main()
{
    try{
        otl_connect::otl_initialize();  //初始化OCI环境
        db.rlogon("sm/sm");
    }
    catch(otl_exception& p){
        cerr<<p.msg<<endl;
        cerr<<p.stm_text<<endl;
        cerr<<p.var_info<<endl;
    }
    db.logoff(); //断开与oracle的连接
    return 0;
}

>>g++ -o test1 test1.cpp -L$ORACLE_HOME/lib -L$ORACLE_HOME/rdbms/lib -I$ORACLE_HOME/rdbms/public -I$ORACLE_HOME/rdbms/demo -lclntsh

原创粉丝点击