@thelegend3553
Человек

Sql. Как обновить некоторые поля в таблице с неким айди пользователя (не ai), а если поля нет, то создать новую запись?

Sql. Как обновить некоторые поля в таблице с неким айди пользователя (не ai), а если поля c таким айди нет, то создать новую запись?
  • Вопрос задан
  • 52 просмотра
Решения вопроса 1
LaRN
@LaRN
Senior Developer
От диалект Sql зависит, можно так попробовать:
update your_table
   set your_field =your_new_value
  from your_table
 where id = your_id

if @@rowcount = 0
insert your_table(id, your_field) 
values (your_id, your_new_value)
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@dzhebrak
Используйте MySQL INSERT ON DUPLICATE KEY UPDATE
INSERT INTO table (column_list)
VALUES (value_list)
ON DUPLICATE KEY UPDATE
   c1 = v1, 
   c2 = v2,
   ...;

https://www.mysqltutorial.org/mysql-insert-or-upda...

PS. Для sqlite используйте REPLACE INTO table
https://www.sqlitetutorial.net/sqlite-replace-stat...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы