OCI(Oracle Call Interface),直译就是Oracle 调用接口,说白了就是Oracle自家的访问Oracle数据库的API。通过这组API,你可以控制SQL语句执行的全过程。
学习一组API,通过博客能浅入门,若想真正全面完整的掌握,还需要看官方文档。给出官方文档地址
http://docs.oracle.com/database/121/LNOCI/oci01int.htm#LNOCI010
还要上班,今天晚上也就半个小时的时间,先来写下linux下搭建oci的全过程。
首先需要下载Instant Client可以理解为Oracle的客户端,包含各种Oracle的函数库,其中就有我们需要的OCI。
下载地址:
http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html
下载
oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm:包含运行OCI,OCCI,JDBC-OCI的全部函数库。
oracle-instantclient12.1-devel-12.1.0.2.0-1.x86_64.rpm:包含Oracle编程所需要的头文件以及一些实例代码(非常重要,后面准备结合这个事例代码来讲解)。
当然也可以下载对应的zip格式文件,只要将ORACLE_HOME设置对了就行。
sudo rpm –ivh oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm
sudo rpm –ivh oracle-instantclient12.1-devel-12.1.0.2.0-1.x86_64.rpm
安装完毕,设置ORACLE_HOME,方法
如果你的启动shell时bash,
Vi .bashrc
插入:
export ORACLE_HOME="/usr/lib/oracle/12.1/client64"
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${ORACLE_HOME}/lib
如果是csh就写到.cshrc,如果是ksh,就写到.kshrc
到此,环境搭建完毕,编译调用OCI的代码使用如下命令:
g++ oci_test.cpp -o oci_test -I/usr/include/oracle/12.1/client64 -L/usr/lib/oracle/12.1/client64/lib -lclntsh
注意一定要先写-I,后写-L
如果编译后的代码不能执行,注意报错信息,如果是连接超时并且目标oracle再windows上注意排查防火墙端口。
——————————————————————————————————————————————————————————
周五吧,开始写oci编程代码。
浙公网安备 33010602011771号