select a.yljgdm,
       b.mxxmje,
       a.kfysxm,
       b.cfidh,
       (select jgjb from cencore.tb_dic_hospital where dmxdmz = a.yljgdm) as yylb,
       a.kfrq
  from CENCORE.TB_CIS_PRESCRIPTION_DETAIL a, cencore.tb_his_mz_fee_detail b
 where a.yljgdm = b.yljgdm
   and a.cyh = b.cfidh
   and a.xmbm = b.mxxmbm
每次执行都会报此类问题,网上说是因为零时表空间不足的问题,这个已经修改了还是没有解决,跪求大神帮忙

解决方案 »

  1.   

    查下alert日志还有没有其他信息
      

  2.   

    请问select jgjb from cencore.tb_dic_hospital where dmxdmz = a.ylgdm是否有且只有一条数据???
    即tb_dic_hospital表与tb_cis_prescription_detail表只存在一对一的关系,不存在一对多的关系??
      

  3.   

    (select jgjb from cencore.tb_dic_hospital where dmxdmz = a.yljgdm) 
    上面这个检索为何不作联结查询而是单单提出来做,
    改成下面的样子可否解决楼主问题
    select a.yljgdm,
           b.mxxmje,
           a.kfysxm,
           b.cfidh,
          c.jgjb  as yylb,
           a.kfrq
      from CENCORE.TB_CIS_PRESCRIPTION_DETAIL a, cencore.tb_his_mz_fee_detail b,cencore.tb_dic_hospital  c
     where a.yljgdm = b.yljgdm
       and a.cyh = b.cfidh
       and a.xmbm = b.mxxmbm
      and c.dmxdmz = a.yljgdm
      

  4.   

    tb_dic_hospital表与tb_cis_prescription_detail表只存在一对一的关系,因为tb_dic_hospital的数据比较少,大概就20条左右,不影响查询速度
      

  5.   

    可以修改一下表空间,换一个磁盘试试(更改数据文件的地址)
    1、查询该用户下的默认临时表空间
    select * from database_properties where property_name='DEFAULT_TEMP_TABLESPACE';
    2、创建新的临时表空间
    create temporary tablespace temp01   tempfile 'D:\ORACLE\ORADATA\TFJS\TEMP01.DBF'
    size 1000M autoextend on;
    3、修改默认表空间
    alter database default temporary tablespace temp01;