OCI连接oracle数据库,不用安装客户端(不需要tnsnames.ora来指定数据库ip地址),不需要服务命名

本来使用oracle数据库提供的访问数据库的接口OCI连接数据库,一般采用“服务命名”来指定数据库ip地址和数据库实例名,配置在tnsnames.ora里面的,所以在程序里面就不用写死数据库的ip地址和数据库实例名了,这样达到了程序移植不需要修改程序而只需修改配置的目的。
但是这样一来就引起了另外一个问题,想要跑数据库操作的程序就必须安装oracle数据库客户端,配置数据库所需的环境变量,实在是太麻烦了。所以现在我想是否能够实现不用安装客户端也不用配置环境变量的方法,想到sqlplus能通过直接指定ip地址和数据库实例名连接,故用程序肯定也能实现。

sqlplus连接数据库可以这样,所以在oci中我把需要“服务命名”的地方我改为下面单引号中的串,实验一下,结果连接成功。就是这么简单。当然,所需要的oci.dll(windows系统中)或者libclntsh.so(linux系统中)的动态库文件还是需要的。自己的水平有限,欢迎一起学习OCI编程,或者是linux c编程,我的一个群号:284635371

sqlplus user/pwd@'(DESCRIPTION=(ADDRESS=(protocol_address_information))
(CONNECT_DATA=(SERVICE_NAME=service_name)))'

sample:

sqlplus test/test@'(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)
(Host=yourDBhost)(Port=1521))(CONNECT_DATA=(SERVICE_NAME=ARK2)
(SERVER=DEDICATED)))'

SQL*Plus: Release 9.2.0.1.0 - Production on Fri Jul 26

Copyright (c) 1982, 2002, Oracle Corporation.
All rights reserved.

Connected to:
Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.1.0 - Production

SQL>

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值