|
Как будет выглядеть UPSERT
|
|||
---|---|---|---|
#18+
Я абсолютно не дружу с БД, но появилась такая необходимость. Есть таблица в БД с такой структурой: Код: sql 1. 2. 3. 4. 5. 6. 7.
На вход для сохранения в БД приходит такой JSON с набором view_id и account_login: Код: sql 1. 2. 3. 4.
Но при сохранении обычным INSERT некоторых JSON возникает ошибка: Код: sql 1.
Как будет выглядеть скрипт для UPSERT (перезаписывать данные, если найден дубликат) в данном случае? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2021, 14:43 |
|
Как будет выглядеть UPSERT
|
|||
---|---|---|---|
#18+
Проверьте наличие по ключу. Есть - update, нет - insert ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2021, 08:54 |
|
Как будет выглядеть UPSERT
|
|||
---|---|---|---|
#18+
Wasteland Rebel, Если есть уникальное ограничение на поле account_view_id Код: sql 1.
то следующий первичный ключ уже не имеет смысла т.к. ограничивается первым. Возможно он лишний, надо знать задачу Код: sql 1.
Обновление при конфликте вставки выглядит так Код: sql 1. 2. 3. 4. 5.
Подробности https://postgrespro.ru/docs/postgresql/11/sql-insert ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2021, 11:31 |
|
|
start [/forum/topic.php?fid=53&tid=1994262]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
56ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
2ms |
others: | 14ms |
total: | 156ms |
0 / 0 |