我的程序连接oracle,c/s模式,客户端都是Win98、PIII650机器。作了以下测试:1、ADO连接,程序中只有一个ADOConnection(Connected:=True),未放其他任何控件,程序起动需要1分25秒。2、ODAC,程序中只有一个OraSession(Connected:=True),未放其他任何控件,程序起动需要2分45秒。3、ODBC+BDE,只放一个Database1,程序起动需要1分15秒。
这么慢的速度来起动程序用户如何受得了,谁有好经验解决连接慢问题?比如用多层分步式或其他控件连接。
真的不行只能用PB了。:(

解决方案 »

  1.   

    不会这么慢吧,我用ado+oracle9,ado控件都是动态创建的,连接时间也就4-5秒,你的怎么这么慢呢???
      

  2.   

    连接时间主要是花在了oacle服务端的初始化上面,由于你连接时候用户权限或者角色过多,带来了很多问题,你只建一个仅有connet的用户,可能会好很多。
      

  3.   

    采用delphi和bde 连接就可以了很快的连接上啊,我也这么用,连接时间大概是20-30秒
      

  4.   

    连接串中server name直接用IP地址,不要经过dns 解析
    很有可能是你oracle的服务器或本地参数文件有问题(sqlnet.ora)
    我  hp ml570+linux+oracle817  ,bde,Odac连接只需2秒
      

  5.   

    建议采用bde进行连接,ip定位,这样会好一些
      

  6.   

    程序启动是,最好不要连接数据库,如果需要到数据库做用户登录,那么最好先利用一个只有connect和select权限的用户连接数据库,这样会让启动时加快。然后做到具体业务时再根据实际情况使用其他用户连接数据库。