ADO好像对Oracle支持不是很好吧?

解决方案 »

  1.   

    临时表有两种:
    --ON COMMIT DELETE ROWS 说明临时表是事务指定,每次提交后ORACLE将截断表(删除全部行) 
    --ON COMMIT PRESERVE ROWS 说明临时表是会话指定,当中断会话时ORACLE将截断表。根据需要建临时表吧
      

  2.   

    本session建的临时表本session应该是可以访问的,只要会话不断开,开一下前端程序里有没有断开的操作.
      

  3.   

    我用到的临时表是ON COMMIT PRESERVE ROWS的,我在VB中使用的是DataEnvironment。程序启动时打开一个Oracle的连接,(DataEnv.ORA_con.Open)始终在程序中保持连接,从来没有断开。我怎么在VB中控制Oracle的session呢?ADO中有这样的操作吗?Oracle版本:Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
    VB是打到SP6的。
    版本都是稳定版,应该不是BUG吧?
      

  4.   

    不是bug
    oracle存储过程返回来的是游标,不是实际数据,所以数据库中的临时表没有数据的话,也就返回不了数据。解决办法一种是用楼上所讲的方法,也就是不要把连接断开,应该就是Connection对象不断吧,这个我没有具体试验,另外就是采用个固定表做临时表用。