Сценарии - Insert or update. Upsert

Page / - Изменено Alexandr Fokin в 2024/06/01 12:59

Insert or update. Upsert

Изменено Alexandr Fokin

в 2024/06/01 12:59

Оглавление

insert on conflict
If not exist	INSERT INTO table1 (id) SELECT 1 WHERE NOT EXISTS ( SELECT 1 FROM table1 WHERE id = 1 ) ON CONFLICT DO NOTHING	Конструкция ON CONFLICT не защищает от обращения к генератору ключа (sequence). И это может привести к тому, что счетчик будет крутиться впустую. Использование выборки с условием не убирает полностью ложные срабатывания (если они проходя одновременно), но после вставки записи, обращения к генератору прекратятся. PostgreSQL Antipatterns: накручиваем себе проблемы https://habr.com/ru/companies/tensor/articles/507688/ Postgres: INSERT if does not exist already https://stackoverflow.com/questions/4069718/postgres-insert-if-does-not-exist-already

Внутренние ссылки:

Дочерние страницы:

Обратные ссылки:

Insert or update. Upsert