sql >> Database teknologi >  >> RDS >> PostgreSQL

PostgreSQL:nogle problemer at indsætte fra vælg med på konflikt

Jeg tror, ​​der er en misforståelse. En unik begrænsning over to kolonner betyder ikke, at hver af kolonnerne er unikke, men at kombinationen af de to kolonner er unik.

Så din must_be_different er anderledes (og svagere) end de unikke begrænsninger på prompt_input_value og collect_project_id . For eksempel, hvis du har de tre rækker

collect_project_id | prompt_input_value --------------------+-------------------- 1 | a 1 | b 2 | b

de vil skabe en konflikt med både enkelt-kolonne unikke begrænsninger, men heller ikke med must_be_different .

Jeg gætter på, at det underliggende problem er, at du vil bruge INSERT ... ON CONFLICT med flere unikke begrænsninger. Det kan ikke lade sig gøre; se dette spørgsmål til en diskussion og potentielle løsninger.




  1. Indlæser stopord fra Postgresql til Solr6

  2. Effektiv lagring af brugeruploadede billeder på filsystemet

  3. './mysql/user.MYD' ikke fundet (Fejlkode:2 - Ingen sådan fil eller mappe)

  4. MySQL lag/lead funktion?