Problems with function while migrating from Windows to Linux - Mailing list pgsql-sql

From Jan Peters
Subject Problems with function while migrating from Windows to Linux
Date
Msg-id 20080422094727.271410@gmx.net
Whole thread Raw
Responses Re: Problems with function while migrating from Windows to Linux  (Craig Ringer <craig@postnewspapers.com.au>)
List pgsql-sql
Hello list,
after developping my application in a Windows environment I am now migrating to the production Linux webserver. I
backedup my database, functions and schemas and imported them again via pgAdmin III, because the first application
whichI used to do the transfer did not move the variable aliases within the function. So what I have (what is running
underWindows) is:
 

function: 

getgv_neu(id int4, tablename text, runde1 int4, runde2 int4) returns int4:

--------------------8<----------------------------

DECLARE
tablename1 varchar := quote_ident(tablename);
result_aktiva integer;
result_passiva integer;
sum integer;
BEGIN
EXECUTE 'SELECT getaktiva(' || id|| ',' || runde1 || ',' || runde2 || ') ;' INTO result_aktiva;
if result_aktiva < -100000 THEN
RETURN result_aktiva;
END IF;
EXECUTE 'SELECT getpassiva(\'' || tablename1 || '\',' || id || ');' INTO result_passiva;
sum = result_aktiva - result_passiva;
RETURN sum;
END;


--------------------8<----------------------------

when I do e.g. a "select getgv_neu(5,'company_5',1,0)" I get the error message:

ERROR:  syntax error at or near "$4" at character 81
QUERY:  SELECT  'SELECT getaktiva(' ||  $1 || ',' ||  $2  || ',' ||  $3  || ') ;' INTO  $4
CONTEXT:  PL/pgSQL function "getgv_neu" line 7 at execute statement

What might be the problem here? Any ideas? I am stuck...

Thanks again in advance

Jan Peters-Anders



-- 
GMX startet ShortView.de. Hier findest Du Leute mit Deinen Interessen!
Jetzt dabei sein: http://www.shortview.de/?mc=sv_ext_mf@gmx


pgsql-sql by date:

Previous
From: Tom Lane
Date:
Subject: Re: Error: could not find pathkey item to sort
Next
From: "Nacef LABIDI"
Date:
Subject: After updating dataset the record goes to the end of the dataset