Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: Q: ORA-01008/PLS-00950

Re: Q: ORA-01008/PLS-00950

From: Martin Haltmayer <Martin_Haltmayer_at_in.augsburg.net>
Date: Sun, 05 Sep 1999 14:40:04 +0200
Message-ID: <37D264A4.55A1722@in.augsburg.net>


I tried in Oracle8i with two dummy tables that fulfilled the existence requirements for the selected columns and I did neither receive a compilation error nor a runtime error.

Can you please specify with which version of Oracle you experience problems? Can you please post the table structure of szla and szla_kif_egyen?

Martin

Gombos Bertalan wrote:
>
> Hi all!
>
> I met a very strange phenomena. I wrote the following package:
>
> create or replace package my_package is
>
> type t_cref is ref cursor;
>
> function get_elemi_egyenleg#SQL(
> p_szla_tip number,
> p_pt number,
> p_hely number,
> p_inst number,
> p_szerz number,
> p_en date,
> p_kn date,
> p_fajta char
> ) return varchar2;
> pragma restrict_references(get_elemi_egyenleg#SQL, WNDS, WNPS);
>
> procedure test_proc;
>
> end my_package;
>
> create or replace package body my_package is
>
> function get_elemi_egyenleg#SQL(
> p_szla_tip number,
> p_pt number,
> p_hely number,
> p_inst number,
> p_szerz number,
> p_en date,
> p_kn date,
> p_fajta char
> ) return varchar2 is
> begin
> return 'x';
> end;
>
> procedure test_proc is
> c my_package.t_cref;
> v_szerz number;
> v_pt number;
> v_en date;
> v_kn date;
> v_kepzett_egyen number;
> begin
> open c for
> select osszeg_str
> from (
> select fk_szla_kepzett_egyen, fk_pt, fk_inst,
> my_package.get_elemi_egyenleg#SQL(
> sz.fk_szla_tip,
> v_pt,
> fk_pt_hely,
> fk_inst,
> v_szerz,
> v_en,
> v_kn,
> 'Z'
> ) osszeg_str
> from szla.szla sz, szla.szla_kif_egyen kif
> where sz.fk_szla_tip = kif.fk_szla_tip
> )
> where v_kepzett_egyen = fk_szla_kepzett_egyen;
> close c;
> end;
>
> end my_package;
>
> Compilation was successful, but when I call test_proc(), I got
> ORA-01008
> (not all variables bound.). After it I watch the error stack, it says:
> PLS-00950 (In this version, PL/SQL tables can not be used in this SQL
> statement.).
>
> Could anybody help me? The SELECT is just an example, my original
> select
> was the following:
>
> open c for
> select
> sum(szorzo * nvl(substr(osszeg_str, 1, instr(osszeg_str,
> '#')-1),
> 0))
> osszeg,
> sum(szorzo * nvl(substr(osszeg_str, instr(osszeg_str, '#')+1,
> instr(osszeg_str, '#', 1, 2)-instr(osszeg_str, '#')-1), 0))
> osszeg_fk,
> sum(szorzo * nvl(substr(osszeg_str, instr(osszeg_str, '#', 1,
> 2)+1),
> 0))
> osszeg_fk_alt,
> v_kepzett_egyen sn_szla_kepzett_egyen,
> v_sze,
> fk_pt,
> fk_inst,
> v_szerz fk_szerz,
> v_en en_nap,
> v_kn kn_nap
> from (
> select fk_szla_kepzett_egyen, fk_pt, fk_inst,
> mozgas.get_elemi_egyenleg#SQL(
> sz.fk_szla_tip,
> v_pt,
> fk_pt_hely,
> fk_inst,
> v_szerz,
> v_en,
> v_kn,
> 'Z'
> )
> osszeg_str, szorzo
> from szla sz, szla_kif_egyen kif
> where sz.fk_szla_tip = kif.fk_szla_tip
> ) x
> where v_kepzett_egyen = fk_szla_kepzett_egyen
> group by
> v_kepzett_egyen,
> v_sze,
> fk_pt,
> fk_inst,
> v_szerz,
> v_en,
> v_kn;
>
> ... where v_xxx are local variables.
>
> Thanks, bye:
> --
> .---, G o m b o s B e r t a l a n
> : :
> :---'-. ,---. ,--. ,-.-. rendszerfejleszto, Oracle mernok
> : : :-- : ; mailto:bgombos_at_freemail.c3.hu
> ,' '---' '---' ' `-'
> -- : ------------------------- Az elet megis egy habostorta? --- '10^2-1
Received on Sun Sep 05 1999 - 07:40:04 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US