CREATE OR REPLACE VIEW V_ES_AUDITRECORDSDETAIL AS
SELECT RECORDS.RECORDID,RECORDS.AUDITTYPEID,PRJTYPE.AUDITTYPENAME,RECORDS.FILEID,RECORDS.COMPANYID,RECORDS.AUDITTIME,RECORDS.PROBLEMATTRIBUTE,RECORDS.PROBLEMTYPEID,RECORDS.AMOUT,RECORDS.ELECTRICITYQUANTITY,RECORDS.CONTENTDETAIL,RECORDS.CORRECTSTATE,RECORDS.CORRECTCONTENT,RECORDS.RISKLEVEL,problemtype.levelnum,problemtype.rootnode,problemtype.path,problemtype.problemtypename,problemtype.problemlevel,problemtype.PARENTTYPEID,comp.companyname  
FROM ES_AUDITRECORDS RECORDS,v_es_problemtype problemtype,ES_COMPANYINFO comp,ES_PROJECTTYPE PRJTYPE where RECORDS.Problemtypeid=problemtype.PROBLEMTYPEID and RECORDS.COMPANYID=comp.companyid and RECORDS.AUDITTYPEID=PRJTYPE.AUDITTYPEID(+)创建了这样的一个视图,
select * from v_es_auditrecordsdetail t这个语句是执行正常的,select t.RECORDID from v_es_auditrecordsdetail t执行就提示ora-03113:通信通道的文件结束,是怎么回事啊?取完整的视图正常,但是取其中一列就出现问题了,也在网上搜了些ora-03113:通信通道的文件结束解决办法,修改数据库的一些参数,还是没有解决

解决方案 »

  1.   

    加上表别名就出错?
    看看视图定义有没有问题
    select text from user_views where view_name=upper('v_es_auditrecordsdetail')
    是否有网络或连接问题
      

  2.   


    显示结果是:
    text
    <long>有没有问题啊?不是加上表别名就出错!是选择视图中的某一列就出错,但是选择所有列就不会出错,但是必须是用
    select t.* from v_es_auditrecordsdetail t,必须用*
      

  3.   


    ORA-03113: end-of-file on communication channel 
    Cause: The connection between Client and Server process was broken.
     
    Action: There was a communication error that requires further investigation. First, check for network problems and review the SQL*Net setup. Also, look in the alert.log file for any errors. Finally, test to see whether the server process is dead and whether a trace file was generated at failure time.
     
    可以看看alert.log里面是怎么写的. 数据库是否运行正常.