From: Tony G. Harris <tgharris_1@juno.com>
To: pgsql-sql@postgresql.org
Subject: Trouble porting a Oracle PL/SQL procedure to PL/pgSQL
Date: Mon, 16 Jun 2003 20:57:42 -0500
Message-ID: <20030616.205744.-16302819.1.tgharris_1@juno.com> (raw)
Hello. I'm using PostgreSQL to learn SQL and SQL-based languages. The
text I'm using (SAMS Teach Yourself SQL in 21 Days, 3rd.ed.) references
Oracle in its examples, though I can usually get PostgreSQL to work
almost as well.
Well, I'm almost to the end of the book and I'm trying to port some of
the book's PL/SQL examples to PL/pgSQL, with mixed success. In this
case, I translated
BEGIN
DECLARE
UnknownPayType EXCEPTION;
CURSOR pay_cursor IS
SELECT name, pay_type, pay_rate, eff_date, sysdate,
rowid
FROM pay_table;
IndRec pay_cursor%ROWTYPE;
. . .
END;
/
to this:
CREATE OR REPLACE FUNCTION update_pay() RETURNS VOID AS '
DECLARE
pay_cursor CURSOR IS
SELECT name, pay_type, pay_rate, eff_date, current_date, oid
FROM pay_table;
IndRec pay_cursor%ROWTYPE;
cOldDate DATE;
. . .
END;
'
LANGUAGE 'plpgsql';
The problem is, when I call the function, I get:
sql-practice=# select update_pay();
ERROR: pay_cursor: no such class
WARNING: plpgsql: ERROR during compile of update_pay near line 2
WARNING: plpgsql: ERROR during compile of update_pay near line 2
ERROR: pay_cursor: no such class
I tried several ways of defining pay_cursor, with the same result.
What am I to do?
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-sql@postgresql.org
Cc: tgharris_1@juno.com
Subject: Re: Trouble porting a Oracle PL/SQL procedure to PL/pgSQL
In-Reply-To: <20030616.205744.-16302819.1.tgharris_1@juno.com>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox