oracle 11g (11.2.0.1.0) OCCI 查询自动退出的问题

10 篇文章 0 订阅
7 篇文章 0 订阅

今天,同事说使用vs2010 occi 连接oracle 11g (11.2.0.1.0)

在进行查询操作时,程序自动退出。

经查发生在执行ResultSet的next()函数时,程序退出的。

经查发现 oracle 11g 的版本是11.2.0.1.0,需要对oracle 11g 的版本进行升级。但是没法下载高版本的oracle,需要购买授权。

最后发现可以通过安Oracle Instant Client,实现客户端的功能。赶忙找到一个高版本的InstantClient。

一顿配置之后,果然问题解决了。

Oracle Instant Client的安装和使用

根据自己需求到Oracle网站(http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html)下载相应的Instant Client版本软件包,各软件包的描述如下:

Instant Client Package

Description

Notes

Basic

All files required to run OCI, OCCI, and JDBC-OCI applications

OCI

OCCI

JDBC

Basic Lite

Smaller version of the Basic, with only English error messages and Unicode, ASCII, and Western European character set support (10.2 only)

OCI

OCCI

JDBC

JDBC Supplement*

Additional(附加的) support for XA, Internationalization, and RowSet operations under JDBC

JDBC

SQL*Plus*

Additional libraries and executable(可执行的) for running SQL*Plus with Instant Client

SQL*Plus 10.2

SQL*Plus 11.2

ODBC Supplement*

Additional(附加的) libraries for enabling ODBC applications with Instant Client (Not all platforms)

ODBC

SDK*

Additional header files and an example makefile for developing Oracle applications with Instant Client

 

ODAC*

Includes ODP.NET, Oracle Services for MTS, Oracle Providers for ASP.NET, Oracle Provider for OLE DB, and OO4O with Oracle Instant Client

 

标*的为可选软件包。

 

1、以11.2.0.2.0版本为例,下载Basic软件包(要支持中文只能下载Basic软件包)

2、解压缩必须包到C:\Oracle\instantclient_11_2

3、设置环境变量:

NLS_lANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK

TNS_ADMIN=C:\Oracle\instantclient_11_2

Path=C:\Oracle\instantclient_11_2;%Path%

为避免访问数据库时出现中文乱码,NLS_lANG的设置很重要;TNS_ADMIN如不设置,tnsnames.ora默认寻址为Instant Client目录下的network\ADMIN目录;%Path%为原有Path变量。

4、参照下面内容编写tnsnames.ora,并保存到安装目录:C:\Oracle\instantclient_11_2

# TNSNAMES.ORA Network Configuration File: C:\oracle\ora90\network\admin\tnsnames.ora

# Generated by Oracle configuration tools.

 

#sample

 

#DATABASENAME =

#  (DESCRIPTION =

#    (ADDRESS_LIST =

#      (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))

#    )

#    (CONNECT_DATA =

#      (SERVICE_NAME = servicename)

#    )

#  )

 

如果有要连接多个Oracle实例,请继续往该文件中加入其它实例的配置。

5、测试:

C:\Oracle\instantclient_11_2>sqlplus /nolog

 

SQL*Plus: Release 11.2.0.2.0 Production on Fri Sep 9 09:42:06 2011

 

Copyright (c) 1982, 2010, Oracle.  All rights reserved.

 

SQL> conn username/password @ <连接字符串>

 

至此,安装已经完成。PLSQL Developer等工具,以及应用软件都可以正常使用了。

 

附录:Linux下环境变量设置

如解压到了/usr/local/oracle目录,配置好TNS_ADMIN、LD_LIBRARY_PATH等,复制到.bashrc文件部分内容如下:

  
  
export ORACLE_HOME=/usr/local/oracle
xport TNS_ADMIN=$ORACLE_HOME/NETWORK/ADMIN
e
export LD_LIBRARY_PATH=$ORACLE_HOME
_LANG=AMERICAN_AMERICA.ZHS1
export SQLPATH=$ORACLE_HOME export NL S6GBK
PATH=$PATH:$ORACLE_HOME
export PATH
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值