Обсуждение: calling a stored procedure using sql query in 7.4
I've created some sql scripts to update a database in version 8.x and now I'm trying to get them to run on servers using v7.4 The following statement works on 8.x servers, but not on 7.4 and I can't figure out how to get it to operate in the earlier version: select calc_cum_gpa_mp(marking_period_id::TEXT) from (select distinct marking_period_id from student_mp_stats) as sms1; I get the error: ERROR: syntax error at or near "(" SQL state: 42601 Context: compile of PL/pgSQL function "calc_cum_gpa_mp" near line 8 Can anyone point me in the right direction? I've searched everywhere for how to use stored procedures in sql queries, and haven't found how to use the subquery to feed values to the stored procedure. It almost looks like I'd need to create another plpgsql function with a loop to do the same thing. Brian
BaseTwo wrote: > The following statement works on 8.x servers, but not on 7.4 and I > can't figure out how to get it to operate in the earlier version: > > select calc_cum_gpa_mp(marking_period_id::TEXT) > from (select distinct marking_period_id from student_mp_stats) as > sms1; > > I get the error: > > ERROR: syntax error at or near "(" > SQL state: 42601 > Context: compile of PL/pgSQL function "calc_cum_gpa_mp" near line 8 Apparently the syntax used in your PL/pgSQL function is incompatible with postgres 7.4. You probably used $$ markers or somesuch, which is new in PG 8. It definitely has nothing to do with how you call the function. -- Alban Hertroys alban@magproductions.nl magproductions b.v. T: ++31(0)534346874 F: ++31(0)534346876 M: I: www.magproductions.nl A: Postbus 416 7500 AK Enschede // Integrate Your World //