From: | Sergey Bondarenko <sbon(at)scelto(dot)ts(dot)kiev(dot)ua> |
---|---|
To: | pgsql-sql(at)postgresql(dot)org |
Subject: | plpgsql function arguments |
Date: | 1999-10-02 06:59:34 |
Message-ID: | XFMail.991002095934.sbon@relc.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
Hi!
The documentation on PL/pgSQL reads:
--cut
name class%ROWTYPE;
Declares a row with the structure of the given class. Class must be an existing table- or
viewname of the database. The fields of the row are accessed in the dot notation.
Parameters to a function can be composite types (complete table rows). In that case, the
corresponding identifier $n will be a rowtype, but it must be aliased using the ALIAS
command described below. Only the user attributes of a table row are accessible in the
row, no Oid or other system attributes (hence the row could be from a view and view rows
don't have useful system attributes).
The fields of the rowtype inherit the tables fieldsizes or precision for char() etc. data
types.
---cut
Does someone used as arguments rowtypes? I failed even to create such function.
I have a table called saldo.
create table saldo (
usename text,
saldo float8
);
Then I try to create a function:
create function test ( ?????? ) reaturns int4 as '
declare
x alias for $1;
y saldo%rowtype;
begin
return 1;
end;
' language 'plpgsql';
That's just test function. It does nothing. The question is what should I write instead
of ?????? when I need to feed the function with the rowtype of saldo. I tried
saldo%rowtype. It fails when meet '%';
Any advice greatly appreciated.
Sergey Bondarenko
Relcom-Ukraine system administrator
From | Date | Subject | |
---|---|---|---|
Next Message | Doug Thistlethwaite | 1999-10-02 15:40:10 | combining columns in select |
Previous Message | Jackson, DeJuan | 1999-10-01 22:27:41 | testing unsubscribe |