Re: Rules on update behavior unexplained ... --> inheritance problem (I believe) - Mailing list pgsql-general

From
Subject Re: Rules on update behavior unexplained ... --> inheritance problem (I believe)
Date
Msg-id 00a901c1d5e2$131430a0$6501a8c0@calvin
Whole thread Raw
In response to Rules on update behavior unexplained ... --> inheritance problem (I believe)  (<tsmets@brutele.be>)
List pgsql-general
After looking for ages into the paper versions I had & finally posted teh
question ... right before I found this
http://www.postgresql.org/idocs/index.php?inherit.html

Sorry for the post !

thomas,



--
Thomas SMETS
rue J. Wytsmanstraat 62
1050 Bruxelles
yahoo-id : smetsthomas
----- Original Message -----
From: <tsmets@brutele.be>
To: <pgsql-general@postgresql.org>
Sent: 27 March, 2002 11:39 PM
Subject: [GENERAL] Rules on update behavior unexplained ... --> inheritance
problem (I believe)


>
> <snip>
> I defined on my database the following :
> -- This table is really useless as such
> -- *************************************
> CREATE TABLE historification ( pkh SERIAL,
>                 -- This will be the moment the record is "archived"
>                                dateend TIMESTAMP DEFAULT
CURRENT_TIMESTAMP);
>
> -- Here is a basic address table
> CREATE TABLE addresses ( pk SERIAL,
>                          street CHAR(50) NOT NULL,
>                          street2 CHAR(50),
>                          zip CHAR(10) NOT NULL,
>                          city CHAR(30) NOT NULL,
>                          Country CHAR(2) REFERENCES COUNTRIES,
>                          datemodified TIMESTAMP DEFAULT
CURRENT_TIMESTAMP);
>
> -- Here is the PostgreSQL historification
> CREATE TABLE AddressHistorics ()
>        INHERITS (historification, addresses);
>
> CREATE RULE update_address AS
>     ON UPDATE TO addresses
>     DO
>         INSERT INTO AddressHistorics (pk, street, street2, zip, city,
> country, datemodified)
>             VALUES (old.pk, old.street, old.street2, old.zip, old.city,
> old.country, old.datemodified);
>
> CREATE RULE delete_address AS
>     ON DELETE TO Addresses
>     DO
>         INSERT INTO AddressHistorics (pk, street, street2, zip, city,
> country, datemodified)
>             VALUES (old.pk, old.street, old.street2, old.zip, old.city,
> old.country, old.datemodified);
> </snip>
>
> Now what ever I do on the addresses table the data are not altered but
> duplicated & the dupicate seem to be modified !
> Hence I have doubles of each rows in my table when I do an update.
> My conclusion is that the current behavior of
>     SELECT * FROM ADDRESSES;
> is similar to the
>     SELECT * FROM ADDRESSES*;
> as explained in the books ...
> The question is HOW CAN make my Postgres 7.1 behave has it should ?
>
> tx,
>
> thomas,
>
>
>
>
>
>
>
> --
> Thomas SMETS
> rue J. Wytsmanstraat 62
> 1050 Bruxelles
> yahoo-id : smetsthomas
>
>
>
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 3: if posting/reading through Usenet, please send an appropriate
> subscribe-nomail command to majordomo@postgresql.org so that your
> message can get through to the mailing list cleanly
>



pgsql-general by date:

Previous
From:
Date:
Subject: Rules on update behavior unexplained ... --> inheritance problem (I believe)
Next
From: Neil Conway
Date:
Subject: Re: Why are selects so slow on large tables, even