Re: [SQL] RV: A little problem updating data with views

From: wieck(at)debis(dot)com (Jan Wieck)
To: chris(dot)bitmead(at)bigfoot(dot)com (Chris Bitmead)
Cc: pgsql-sql(at)postgreSQL(dot)org
Subject: Re: [SQL] RV: A little problem updating data with views
Date: 1999-06-04 23:28:52
Message-ID: m10q3OO-0003kGC@orion.SAPserv.Hamburg.dsh.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

>
> I don't believe views are updatable in postgresql.

They are - if someone read the chapter on rules.

CREATE RULE vtest_upd AS ON UPDATE TO VTEST DO INSTEAD
UPDATE ttest SET t = new.t WHERE t = old.t;

It is just that those rules cannot simply be generated on the
fly while CREATE VIEW. In this simple case of course, but if
the view is a join of 3 tables, it's not clear how to update
them (if at all). So it's up to the DB designer to create
them by hand.

Jan

>
> Jorge Herrera Pi=F1ero wrote:
> >=20
> > Hello,
> >=20
> > We are using PostgreSQL v6.4 and have problems when we want update
> > data throught views.
> > When we issue an update statment within a view, always obtain 'UPDA=
> TE 0'
> > and the data is not updated. We have checked write permissions on v=
> iew
> > and are right.
> >=20
> > Any ideas was going wrong?
> >=20
> > thanks in advance.
> >=20
> > A complete UPDATE test:
> >=20
> > test=3D> create table ttest (t varchar(20), n int4);
> > test=3D> create view vtest as select t from ttest;
> > test=3D> insert into ttest values('asd', 0);
> > test=3D> select * from vtest;
> > t
> > ---
> > asd
> > (1 row)
> >=20
> > test=3D> grant all on ttest, vtest to postgres;
> > CHANGE
> >=20
> > test=3D> update vtest set t=3D'asdasd';
> > UPDATE 0
>
> --=20
> Chris Bitmead
> http://www.bigfoot.com/~chris.bitmead
> mailto:chris(dot)bitmead(at)bigfoot(dot)com
>
>

--

#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me. #
#========================================= wieck(at)debis(dot)com (Jan Wieck) #

In response to

Browse pgsql-sql by date

  From Date Subject
Next Message Ant9000 1999-06-05 13:56:31 Re: [SQL] OUTER JOINs in PostgreSQL
Previous Message Martin Leja 1999-06-04 17:22:21 Re: [SQL] Howto convert floats to text?