PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

UPSERT в PostgreSQL с помощта на jOOQ

jOOQ 3.7+ поддържа ON CONFLICT на PostgreSQL 9.5 клауза:

Пълният синтаксис, специфичен за доставчика на PostgreSQL, все още не се поддържа, но можете да използвате синтаксиса MySQL или H2, които и двата могат да бъдат емулирани с помощта на ON CONFLICT на PostgreSQL :

MySQL INSERT .. ON DUPLICATE KEY UPDATE :

DSL.using(configuration)
   .insertInto(TABLE)
   .columns(ID, A, B)
   .values(1, "a", "b")
   .onDuplicateKeyUpdate()
   .set(A, "a")
   .set(B, "b")
   .execute();

H2 MERGE INTO ..

DSL.using(configuration)
   .mergeInto(TABLE, A, B, C)
   .values(1, "a", "b")
   .execute();


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Актуализирайте множество jsonb стойности

  2. Как да зададете стойност на полето за съставна променлива с помощта на динамичен SQL

  3. Коя колона за външен ключ:id или друга колона и защо?

  4. Как да регистрирам SQL изрази във Vapor 3/Fluent?

  5. Рег. поддръжка на транзакции за пролетно пакетно задание на ниво задание