Re: create or replace rule/view (fwd) - Mailing list pgsql-patches

From Rod Taylor
Subject Re: create or replace rule/view (fwd)
Date
Msg-id 1030474613.51638.4.camel@jester
Whole thread Raw
In response to Re: create or replace rule/view (fwd)  (Bruce Momjian <pgman@candle.pha.pa.us>)
Responses Re: create or replace rule/view (fwd)
Re: create or replace rule/view (fwd)
List pgsql-patches
REPLACE VIEW shouldn't change the visible structure at all.  It defeats
the purpose.

So, removing that entire portion and throwing an error when the user
tries would be much more appropriate.


The example shown would break nearly every function, subview, etc. that
was using it at the time.

On Tue, 2002-08-27 at 14:50, Bruce Momjian wrote:
>
> Can someone address Gavin's concern about UpdateAttributeTuples() so we
> can get this patch into 7.3?  I know a few people have been asking for
> it.
>
>
> ---------------------------------------------------------------------------
>
> Gavin Sherry wrote:
> > Re-sent.
> >
> > No one else seems to have received it.
> >
> > Bruce: copied you in to make sure.
> >
> > Gavin
> >
> > ---------- Forwarded message ----------
> > Date: Mon, 12 Aug 2002 03:22:08 +1000 (EST)
> > From: Gavin Sherry <swm@linuxworld.com.au>
> > To: pgsql-patches@postgresql.org
> > Subject: create or replace rule/view
> >
> > Attached is a patch implementing:
> >
> > create or replace rule ...
> > create or replace view ...
> >
> > It passes all regression tests. There's only one really sketchy part of
> > the patch: UpdateAttributeTuples(). This routine is fairly dangerous since
> > it simply removes a given relid's pg_attribute entries and creates a new
> > set basic on a given TupleDesc. Naturally, it is only useful for views.
> >
> > It is important to have this functionality so that you can do something
> > like:
> >
> > template1=# create view abc as select 'test'::text as a;
> > CREATE VIEW
> > template1=# select * from abc;
> >   a
> > ------
> >  test
> > (1 row)
> >
> > template1=# create or replace view abc as select '1'::int2 as a;
> > CREATE VIEW
> > template1=# select * from abc;
> >  a
> > ---
> >  1
> > (1 row)
> >
> > Regardless, the patch may need some cleaning up. Unfortunately, I don't
> > have enough time on my hands over the coming week. Considering beta is
> > coming up I thought it best to submit and see what happens.
> >
> > Gavin
>
> Content-Description:
>
> [ Attachment, skipping... ]
>
> --
>   Bruce Momjian                        |  http://candle.pha.pa.us
>   pgman@candle.pha.pa.us               |  (610) 359-1001
>   +  If your life is a hard drive,     |  13 Roberts Road
>   +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073
> ----
>

>
> ---------------------------(end of broadcast)---------------------------
> TIP 2: you can get off all lists at once with the unregister command
>     (send "unregister YourEmailAddressHere" to majordomo@postgresql.org)



pgsql-patches by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: create or replace rule/view (fwd)
Next
From: Bruce Momjian
Date:
Subject: Re: psql: show which tables contraints are for with a \d