Re: Bulkloading using COPY - ignore duplicates? - Mailing list pgsql-hackers

From Mikheev, Vadim
Subject Re: Bulkloading using COPY - ignore duplicates?
Date
Msg-id 3705826352029646A3E91C53F7189E3251846D@sectorbase2.sectorbase.com
Whole thread Raw
In response to Bulkloading using COPY - ignore duplicates?  (Lee Kindness <lkindness@csl.co.uk>)
List pgsql-hackers
>  > 1. I prefer Oracle' (and others, I believe) way - put
> statement(s) in PL block and define for what exceptions
> (errors) what actions should be taken (ie IGNORE for
>  > NON_UNIQ_KEY error, etc).
> 
> Some people prefer 'pure' SQL. Anyway, it can be argued which
> is worse - the usage of non-SQL language, or usage of extended
> SQL language. I guess the SQL standard does not provide for such
> functionality?

Yes, there is no such syntax in standard. And imho when some
feature is not in standard then it's better to implement it
how others do (for as much compatibility as possible/significant).

>  > 2. For INSERT ... SELECT statement one can put DISTINCT in
> select' target list.
> 
> With this construct, you are effectively copying rows from
> one table to another - or constructing rows from various
> sources (constants, other tables etc) and inserting these
> in the table. If the target table has unique indexes 
> (or constraints), and some of the rows returned by SELECT violate

Sorry, I didn't consider this case, you're right.

> I believe all this functionality will have to consider the 
> syntax firts.

All this functionality will have to consider savepoints
implementation first. As for syntax - we could implement both.

Vadim


pgsql-hackers by date:

Previous
From: "Mikheev, Vadim"
Date:
Subject: Re: ON ERROR triggers
Next
From: Bruce Momjian
Date:
Subject: O_DIRECT use