Обсуждение: INSERT ... ON CONFLICT & SERIAL
Применяем INSERT ... ON CONFLICT DO UPDATE - очень удобно. Код получается что вставки что правки один и тот же. Тестов меньше, запросов меньше. Удобно. Однако есть связанное неудобство. Когда он идёт по ветке UPDATE, то инкрементируются SERIAL-последовательности. В итоге приходится там где раньше хватило бы SERIAL простого - переходить на BIGSERIAL. Ну и разрывы в номерах id получаются. Никамильфо есть какие-то идеи как победить эту проблему?
А что если перейти на натуральные ключи? )
С уважением, Андрей Зевакин.
чт, 11 апр. 2019 г. в 21:41, Dmitry E. Oboukhov <unera@debian.org>:
Применяем INSERT ... ON CONFLICT DO UPDATE - очень удобно. Код получается что вставки что правки один и тот же.
Тестов меньше, запросов меньше.
Удобно.
Однако есть связанное неудобство. Когда он идёт по ветке UPDATE, то инкрементируются SERIAL-последовательности.
В итоге приходится там где раньше хватило бы SERIAL простого - переходить на BIGSERIAL. Ну и разрывы в номерах
id получаются.
Никамильфо
есть какие-то идеи как победить эту проблему?
А можно поподробней? :) Что есть натуральные ключи?
чт, 11 апр. 2019 г., 23:45 Андрей Зевакин <azevakin@gmail.com>:
А что если перейти на натуральные ключи? )С уважением, Андрей Зевакин.чт, 11 апр. 2019 г. в 21:41, Dmitry E. Oboukhov <unera@debian.org>:Применяем INSERT ... ON CONFLICT DO UPDATE - очень удобно. Код получается что вставки что правки один и тот же.
Тестов меньше, запросов меньше.
Удобно.
Однако есть связанное неудобство. Когда он идёт по ветке UPDATE, то инкрементируются SERIAL-последовательности.
В итоге приходится там где раньше хватило бы SERIAL простого - переходить на BIGSERIAL. Ну и разрывы в номерах
id получаются.
Никамильфо
есть какие-то идеи как победить эту проблему?