MS OLE DB FOR ORACLE真的是不能用的,这并不是为你一个人换驱动,如果你不信,其它他们开发的程序都是有问题的,只不过是你们没有发现罢了
你可以做一个测试,你用DELPHI做一个DEMO,在其中放一个ADOCONNECTION,这时候用MS OLE DB FOR ORACLE,三个ADOQUERY,这时候,然后全部OPEN这些ADOQUERY,你在ORACLE的SQL PLUS查询一下你的SESSION的情况:
select username,sid,serial# from v$session
你就会发现,你的一个应用程序就启动了三个SESSION,也就是你,你用了多少个ADOQUERY,就起了多少个SESSION,则如果你用的是ORACLE FOR OLE DB 的话,那么,你用多少个ADOCONNECTION,则就只会启动多少个SESSION,当然,相应的,SESSION启动的越少,就越省资源,速度就越快!而且在有多个ADOQUERY并行的时候就效率越高
ADO连接ORACLE不要用microsoft ole db for oracle
而要用 ORACLE OLE DB PROVIDER去连接,用ORACLE自带的OLE DB驱动就不会出错的
用MS的驱动连不上的原因是,MS在ADO的最近几个版本已经停止了对ORACLE新版本数据库的支持,而且就是旧版本,一直也是运行不稳定。。
呵呵,原来我用DELPHI 6开发的时候,也是用MS的驱动,结果弄的我们一头包,用了很长时间才搞定的