就是 有一个比较复杂的sql语句,在访问数据库获得数据时抱ora-04031错,而其他的sql语句是不会出现这个错的,但是这个sql语句本身是没有问题的,我在PLSQL Developer中调试过的,而且在c#中调用也不会出错,

解决方案 »

  1.   

    大部分的ORA-4031错误都和共享池大小有关,你看看是不是共享池过于小的.
      

  2.   

    我是只有一个sql语句有问题,别的sql语句都没有什么问题.
      

  3.   

    ls已经有人说过了,share-pool-size太小了,调大一点。这个参数的设置建议在150M~500M之间。如果系统内存为1G,该值可设为150M~200M;如果为2G,该值设为250M~300M;每增加1G内存,该值增加100M;但该值最大不应超过500M。
    另外看看oracle的版本,打些补丁上去也有可能解决这个问题,
      

  4.   

    你这个sql是否是oracle语法专有的?如果是的话那得采用native sql进行查询