delphi xe连接oracle心得(备忘)纯原创,一个字一个字打的

前几天朋友要求我给他的程序增加一个功能,数据库是oracle 11g的,因为以前没用过oracle,所以配置开发环境费了很大的劲,现在记录下来,怕以后忘记

1、服务器安装了windows server 2008 ,数据库安装的oracle 11g的32位server版本。

2、配置sql developer时要求指定路径。刚开始安装了orale 11g的64位版本,所以指定的java.exe路径老是错了,后来换成了32位版本。指定了E:\app\product\11.2.0\dbhome_1\jdk\bin 就OK了。

3、在sql developer中建立了新的数据库连接。所以能成功看到数据表了。

4、在E:\app\product\11.2.0\dbhome_1\network\admin\下编辑tnsnames.ora

ORCL =  //这个orcl是数据库名称
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.28)(PORT = 1521))
    )//这个192.168.1.28 是服务器的IP地址
    (CONNECT_DATA =
      (SERVICE_NAME = ORCL)//这个orcl 也是数据库名称 把这三个地方改过来就OK了
    )
  )

5、因为是用另一台电脑来访问这个服务器的oracle,所以要打开oracle的远程。

     5-1、在服务器端运行database configuration assistant (简称dbca)。

     5-2、第一步选择 配置数据库选项,再选择数据库,最后  选择共享服务器模式.

       中间老是出现实例化 EM 配置文件时出错,然后就百度,发现用以下方法重置监听服务就好了。

    第一步: D:\Documents and Settings\Administrator>emca -repos drop  
    第二步D:\Documents and Settings\Administrator>emca -config dbcontrol db -repos create

以上步骤都是为了打开oracle的远程连接,只要提示成功了。就OK。

6、开始用delphi xe连接oracle了(在这耽误的时间最长,差不多找了两天才找到原因)(这部分操作都不在服务器上操作)
在delphi xe中,新建一个vcl程序,连接数据库时我喜欢用ado,所以拖了个adoconnection控件过来,双击开始连接oracle数据库。
但是老是提示:" 未找到 Oracle 客户端和网络组件。这些组件是由 Oracle 公司提供的,是 Oracle 8i 版 (或更高) 客户软件安装的一部分。"
先说说我开发的机器环境:我是安装了win7 64位操作系统,安装了delphi xe10开发环境,连接数据库时使用的是microsoft ole db provider for oracle
头疼啊,找了半天不知道什么原因,问了群里的朋友,他们说要在这台电脑上安装oracle客户端,没法子就上网找了很多客户端安装上,开始找的是64位的,安装上,不行,换成32位的,安装上还是不行。
       上百度查了半天,说要配置那个tnsnames.ora 文件,看到客户端里有这样的快捷方式,看来是有用,于是就又配置了tnsnames文件,和上面那个一样,心想这次可以了吧,可是还是出上面那个错误。晕了,又百度,看到好多改什么安全权限的,试了半天,也不行。就扔那里了,去做别的。
      第二天早上,突然想起了,是不是要配置odbc啊,要不delphi怎么知道它要连oracle,于是又打开电脑的控制面板,找到管理工具里面的数据源(odbc),开始配置,新建了一个数据源,连接oracle,成功(因为在这里我是安装了64位的oracle客户端),我电脑安装的是win7 64位的,所以下了这个oracle客户端。可是进delphi xe10,用adoconntion 连接oracle,又提示什么系统dns不品配,真让它打败了。
      后来一想,我用delphi xe10开发程序的时候,发布的程序都是32位的程序,发布64位程序老是不成功,是不是因为我安装的64位oracle不行,于是又上网找oracle 32位客户端下载安装,最后在csdn上下载到,可下载完发现是一个压缩包,解压后没有安装程序。看了一下做者的说明,要求在windows的环境变量里加上这个路径就行了。又照着做下去,最后关键的一步,要打开win7的32位odbc配置,可以控制面板里打开的默认odbc是64位的,只好在运行里输入:C:\Windows\SysWOW64\odbcad32.exe 也进入一个odbc的配置窗口,样子和刚才那个一样,内容不一样,就在这里配置了一下,这次很顺利,建完了,再进入delphi xe10,建立连接成功,拖了一个adoquery,一个datasource,一个 dbgrid ,成功连上oracle表了
总结:写了这么多,纯手打,也懒的传图片。主要是把自己过程中的一些出现的问题说了一下,怕自己以后忘了。
关键的几个地方:服务器安装的系统及oracle 11g的版本很重要。写程序的电脑(不是服务器),除了操作系统是64位的,其它都要安装32位的就行了。第一次写,高手看了不要笑话。也没校对,有打别字,错字的地方,自己联想一下就过去.

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值