From: | Achilleus Mantzios <achill(at)matrix(dot)gatewaynet(dot)com> |
---|---|
To: | Pedro Igor <pedroigor(at)aip(dot)com(dot)br> |
Cc: | pgsql-sql(at)postgresql(dot)org |
Subject: | Re: SQL QUERY |
Date: | 2002-12-03 14:47:22 |
Message-ID: | Pine.LNX.4.44.0212031639490.7057-100000@matrix.gatewaynet.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
On Tue, 3 Dec 2002, Pedro Igor wrote:
> But i want implement a trigger that auto-increments the id field. This
> options is personal, i don΄t like to depend from the database.
>
Then use table name as parameter to your function.
But trully its an error prone policy the one you try to follow,
what if a table has a primary key named "fobarid"??
Your function will not work correctly.
Or you could programatically read the system tables
and find out which column is the primary key for a given table.
But unfortunately that way you depend on the database
even worse than simply and nicely use sequences.
> Pedro Igor
>
> ----- Original Message -----
> From: "Achilleus Mantzios" <achill(at)matrix(dot)gatewaynet(dot)com>
> To: "Pedro Igor" <pedroigor(at)aip(dot)com(dot)br>
> Cc: <pgsql-sql(at)postgresql(dot)org>
> Sent: Tuesday, December 03, 2002 11:05 AM
> Subject: Re: [SQL] SQL QUERY
>
>
> > On Tue, 3 Dec 2002, Pedro Igor wrote:
> >
> > > I have the following function:
> > > CREATE FUNCTION public.auto_incremento() RETURNS trigger AS '
> > > begin
> > > new.id = (select (max(id) + 1) from teste);
> > > return new;
> > > end;' LANGUAGE 'plpgsql'
> > >
> > > I created a trigger that uses this function, but i want to the function
> be usefull for all tables and not only to tbale teste.
> > >
> > > Someone know how ???
> >
> > Take a look at sequences.
> > (In Addition, they are autimatically created when a column is of type
> > 'SERIAL').
> >
> > >
> > >
> > >
> > > Pedro Igor
> > >
> > >
> > >
> > >
> >
> > ==================================================================
> > Achilleus Mantzios
> > S/W Engineer
> > IT dept
> > Dynacom Tankers Mngmt
> > Nikis 4, Glyfada
> > Athens 16610
> > Greece
> > tel: +30-10-8981112
> > fax: +30-10-8981877
> > email: achill(at)matrix(dot)gatewaynet(dot)com
> > mantzios(at)softlab(dot)ece(dot)ntua(dot)gr
>
>
==================================================================
Achilleus Mantzios
S/W Engineer
IT dept
Dynacom Tankers Mngmt
Nikis 4, Glyfada
Athens 16610
Greece
tel: +30-10-8981112
fax: +30-10-8981877
email: achill(at)matrix(dot)gatewaynet(dot)com
mantzios(at)softlab(dot)ece(dot)ntua(dot)gr
From | Date | Subject | |
---|---|---|---|
Next Message | Alphasoft | 2002-12-03 14:48:07 | problem with view in 7.3 |
Previous Message | Troy | 2002-12-03 14:46:46 | Re: [OT] Inventory systems (private) |