我在程序里写select * from tb_test ,open的时候结果会报ORA-03113 错误
放在plsql里不会的。什么情况?

解决方案 »

  1.   

    这是个经典错误,每种错误的处理方法都不一样
    你没描述清楚
    你是从程序连到数据库服务器报的错吗?
    如果是这样,属于“客户端通信不能正确处理”
    处理方法:SQL*Net驱动器的问题:
    如果使用的版本比较低的驱动器,请更换到新版本的驱动.SQL*Net 
    的驱动没有连接到Oracle可执行文件会导致错误.检查网络是否通畅Windows平台的常见问题:
    在Windows平台创建数据库的时侯,如果出现该问题可以考虑用如下的方法:
    首先检查本地网络设置.查看网络上是否有同名的结点或有冲突的IP.如果问题依旧,可以保
    守的用下面的方法:
    1.        禁用网卡:将本地连接状态改为禁用;
    2.        将sqlnet.ora文件打开(以记事本形式)将nts验证注释掉:
    #SQLNET.AUTHENTICATION_SERVICES= (NTS).
    3.        创建数据库; 
    4.        创建成功后,恢复本地连接.
      

  2.   

    我是用orasession连接oracle数据库。程序一运行就连接,只连这一次。SQL*Net驱动器的问题,请问我怎么更新这个新版本驱动
      

  3.   

    没分号。数据库时集群的,orasession连接数据库写法上有没什么特别的
      

  4.   

    这个应该和集群没关系,你PLSQL里可以的话,就看你程序里怎么写了
      

  5.   

    我一样的代码放在plsql里是可以没问题的
      

  6.   

    没有太明白楼主的意思,放在程序里是很忙意思?是放到存储过程里面吗?
    open是什么意思?表示的是一个表名吗?
      

  7.   

    没放存储过程里。就select * from tb_test 语句。放到oraquery的sql里,然后执行open操作。