Re: [SQL] insertable views - not copy-able ?

From: Herouth Maoz <herouth(at)oumail(dot)openu(dot)ac(dot)il>
To: Daniel Péder <dpeder(at)infoset(dot)cz>, "'pgsql-hackers(at)postgresql(dot)org'" <pgsql-hackers(at)postgreSQL(dot)org>, "'pgsql-sql(at)postgresql(dot)org'" <pgsql-sql(at)postgreSQL(dot)org>
Subject: Re: [SQL] insertable views - not copy-able ?
Date: 1999-10-19 13:25:19
Message-ID: l03130302b43220c310b0@[147.233.159.109]
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-sql

At 22:56 +0200 on 17/10/1999, =?iso-8859-2?Q?Daniel_P=E9der?= wrote:

> what about this:
> ( it would be nice to have it working, specially for copying values from
>files into table with default fields, having the default fields doing
>their job or initialising tables using reduced set of columns )
>
> mydb=> create sequence MYSEQ;
> CREATE
> mydb=> create table MYTAB ( ID int4 default nextval('MYSEQ'), NAME text );
> CREATE
> mydb=> create view MYVIEW as select name from MYTAB;
> CREATE
> mydb=> copy MYVIEW from stdin;

Seems this view is neither insertable nor copyable. To make it insertable,
you have to define a rule, you know.

In any case, I don't think it would work for copy - the rule I mean.

IMO, if you want to copy data and have defaults work, you copy the data
into a temporary table with only the necessary fields, and then issue an
insert:

CREATE TEMP TABLE tmp_tab ( name text );
COPY tmp_tab FROM stdin;
jim
john
jack
\.
INSERT INTO mytab (name) SELECT name FROM tmp_tab;
DROP TABLE tmp_tab;

Herouth

--
Herouth Maoz, Internet developer.
Open University of Israel - Telem project
http://telem.openu.ac.il/~herutma

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Bruce Momjian 1999-10-19 13:41:49 Readline use in trouble?
Previous Message Peter Mount 1999-10-19 11:46:38 RE: [HACKERS] Re: New developer globe

Browse pgsql-sql by date

  From Date Subject
Next Message TicinoShop.com 1999-10-19 14:43:20 SELECT LAST RECORD
Previous Message Ian L. Atkin 1999-10-19 10:12:21 subscribe