Search Postgresql Archives

CANNOT USE ANY INDEX ON UPSERT (INSERT.....ON CONFLICT)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi all,

I have a problem with INSERT ... ON CONFLICT sql command.

Reading 9.6 documentation i see that ON  CONFLICT command will accpets only index_column_name or index_expression (unique composite/primary indexes are valid too).

So, my problem is that i can't create any type of upsert-valid index . Let me explain.

I have a table T1 containing  F1, F2, F3, F4 fields.

I can insert same records in T1, MAX TWICE.

I can have records like (A,B,C,D),(B,A,D,C), etc.. and  (A,B,C,D) AGAIN. Any other next insert of (A,B,C,D) is not allowed (actually it is avoided by a complex-and-slow-performance select count in before insert/update trigger). 

In this case i can't create any type of primary/unique index, like a composite F1,F2, F3, F4 index. (correct me if i am wrong please).

So, how to use UPSERT in this case?

Best regards,

Agharta

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux