Re: [HACKERS] view?

From: "Jose' Soares" <jose(at)sferacarta(dot)com>
To: Constantin Teodorescu <teo(at)flex(dot)ro>
Cc: "pgsql-hackers(at)postgreSQL(dot)org" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: [HACKERS] view?
Date: 1999-02-12 13:53:21
Message-ID: 36C43250.54C94AE5@sferacarta.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Constantin Teodorescu ha scritto:

> Jan Wieck wrote:
> >
> > Jose' Soares wrote:
> >
> > > I modified psql.c to use pg_get_viewdef() function to seek for views and
> > > now I can display only tables using \dt
> >
> > I suggest not to apply this patch
> >
> > 1. The function pg_get_viewdef() is definitely too much
> > overhead. In fact it must parse back the complete view
> > .......
>
> I used pg_get_viewdef() function to properly detect views and tables in
> PgAccess.
> For the moment, I have released a new version 0.94 of PgAccess based on
> this and it works fine.
>
> I am sure that you are right concerning pg_get_viewdef() function, but
> please, could you tell me another way of detecting views from "false
> views" ? relhasrules field isn't good enough for it and for the moment,
> pg_get_viewdef() seems to be a good method. If anyone could tell me
> another way of safely detecting views I can change it.
>
> Also, I used pg_get_viewdef() in order to get views's definition for the
> "Design" view function so, I will need also such a function in order to
> implement this feature.
>
> --
> Constantin Teodorescu
> FLEX Consulting Braila, ROMANIA

I'm not sure if we may consider good the pg_views data.
If so you can check for views into it, as..

hygea=> \d pg_views

Table = pg_views
+----------------------------------+----------------------------------+-------+
| Field | Type | Length|
+----------------------------------+----------------------------------+-------+
| viewname | name | 32 |
| viewowner | name | 32 |
| definition | text | var |
+----------------------------------+----------------------------------+-------+

hygea=> \dv
Database = hygea
+------------------+----------------------------------+----------+
| Owner | Relation | Type |
+------------------+----------------------------------+----------+
| postgres | wattivita | view |
| postgres | wtabelle | view |
+------------------+----------------------------------+----------+

hygea=> select 'yes' from pg_views where viewname='wattivita';
?column?
--------
yes
(1 row)

-Jose'-

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message jose' soares 1999-02-12 14:06:50 Re: [GENERAL] A mistake generates strange result
Previous Message Oleg Broytmann 1999-02-12 11:23:01 Re: [HACKERS] Re: your mail