请教一个informix 存储过程!语句如下:
Create Procedure "informix".sp_abc(Fabc varchar(2))
select   iptbopnsb.numeroordemproduca as  nume ,iptbopnsb.numeroserie as inlineNu,ipitunico_1.numeroserie as inlineNB,  tabpanel.fchrpanel as Panel,iptvpowerboard.fchrpower   as  power,iptvmainboard.fchrmainboard   as  mainboard,  iptvatsc.fchratsc  as  atsc,iptvenclosureboard.fchrenclosure  as  closure,iptvioboard.fchrioboard  as ioboard, iptvtunerboard.fchrtuner  as  tuner from   iptbopnsb,outer  iptvmainboard, outer  tabpanel, outer  iptvatsc,outer  iptvenclosureboard,  outer iptvioboard,  outer  iptvpowerboard,outer  iptvtunerboard,outer  ipitunico_1 where   iptbopnsb.numeroordemproduca=Fabc       and  iptbopnsb.numeroserie=tabpanel.fchrinline    and  iptbopnsb.numeroserie=iptvatsc.numeroserie  and   iptbopnsb.numeroserie=iptvenclosureboard.numeroserie  and  iptbopnsb.numeroserie=iptvioboard.numeroserie   and  iptbopnsb.numeroserie=iptvpowerboard.numeroserie   and  iptbopnsb.numeroserie=ipitunico_1.numeroordemproduca and   iptbopnsb.numeroserie=iptvtunerboard.numeroserie  and  iptbopnsb.numeroserie=iptvmainboard.numeroserie  order by iptbopnsb.numeroserie;
End Procedure
;报Error: INTO TEMP table required for SELECT statement. (State:S1000, Native Code: FFFFFD6D) 这个错啊?还有怎么调试啊?

解决方案 »

  1.   

    单纯查询语句:
    select   iptbopnsb.numeroordemproduca as  nume ,iptbopnsb.numeroserie as inlineNu,ipitunico_1.numeroserie as inlineNB,  tabpanel.fchrpanel as Panel,iptvpowerboard.fchrpower   as  power,iptvmainboard.fchrmainboard   as  mainboard,  iptvatsc.fchratsc  as  atsc,iptvenclosureboard.fchrenclosure  as  closure,iptvioboard.fchrioboard  as ioboard, iptvtunerboard.fchrtuner  as  tuner from   iptbopnsb,outer  iptvmainboard, outer  tabpanel, outer  iptvatsc,outer  iptvenclosureboard,  outer iptvioboard,  outer  iptvpowerboard,outer  iptvtunerboard,outer  ipitunico_1 where   iptbopnsb.numeroordemproduca='这里定义一个变量'
           and  iptbopnsb.numeroserie=tabpanel.fchrinline    and  iptbopnsb.numeroserie=iptvatsc.numeroserie  and   iptbopnsb.numeroserie=iptvenclosureboard.numeroserie  and  iptbopnsb.numeroserie=iptvioboard.numeroserie   and  iptbopnsb.numeroserie=iptvpowerboard.numeroserie   and  iptbopnsb.numeroserie=ipitunico_1.numeroordemproduca and   iptbopnsb.numeroserie=iptvtunerboard.numeroserie  and  iptbopnsb.numeroserie=iptvmainboard.numeroserie  order by iptbopnsb.numeroserie
    可以用,请问如何写成informix 存储过程!如何调试或运行?用exec 吗?谢谢!
      

  2.   

    --改一下:
    Create Procedure sp_abc(@Fabc varchar(2))   --这里得用@  表示变量   --informix这个不用了吧?
    as    --
    select   iptbopnsb.numeroordemproduca as  nume ,iptbopnsb.numeroserie as inlineNu,ipitunico_1.numeroserie as inlineNB,  
    tabpanel.fchrpanel as Panel,iptvpowerboard.fchrpower   as  power,iptvmainboard.fchrmainboard   as  mainboard, 
    iptvatsc.fchratsc  as  atsc,iptvenclosureboard.fchrenclosure  as  closure,iptvioboard.fchrioboard  as ioboard, 
    iptvtunerboard.fchrtuner  as  tuner 
    from   iptbopnsb,outer  iptvmainboard, 
    outer  tabpanel, outer  iptvatsc,
    outer  iptvenclosureboard,  outer iptvioboard, 
     outer  iptvpowerboard,outer  iptvtunerboard,outer  ipitunico_1 
    where   iptbopnsb.numeroordemproduca=Fabc       
    and  iptbopnsb.numeroserie=tabpanel.fchrinline   
     and  iptbopnsb.numeroserie=iptvatsc.numeroserie  and   iptbopnsb.numeroserie=iptvenclosureboard.numeroserie  
    and  iptbopnsb.numeroserie=iptvioboard.numeroserie   and  iptbopnsb.numeroserie=iptvpowerboard.numeroserie  
     and  iptbopnsb.numeroserie=ipitunico_1.numeroordemproduca and   iptbopnsb.numeroserie=iptvtunerboard.numeroserie  
    and  iptbopnsb.numeroserie=iptvmainboard.numeroserie  order by iptbopnsb.numeroserie   --这不用分好了
    end      ---结束
      

  3.   

    你的是SQL里的吧?不是informix的,informix 的语法我真讨厌,我也不太懂。
      

  4.   

    是mssql的informix 我没用过
      

  5.   

    好像很少人用informix哦!我也不想用啊,可是公司就是这个没办法!
      

  6.   

    是不是看到语句太长了不想看啊?这只是一句查询语句啊,可以不看,改一下就行,我只是不懂informix的格式/ 请帮帮我吧!谢谢