Kommov
@Kommov

Как сделать массовый апдейт/инсерт в SQLite без обнуления неуказанных в запросе полей?

Прошу помощи знатоков SQLite в решении следующей задачки :)
Есть таблица Table1. В ней 4 колонки: id (уникальна), doc, name, info:
5c951c67679ca736068707.png

В ней, допустим, лежат следующие значения:
5c951ca965f30636800231.png

Мне нужно сделать массовый апдейт УКАЗАННЫХ в запросе полей. Я делаю его следующим образом:
5c951edf0e535531328339.png

Всё бы хорошо, но только все не указанные поля, в этом случае обнуляются. Результат после запроса:
5c951ef5887c0533082313.png

Как видно, колонка info стала null. Есть ли способ сделать так, чтоб апдейт или инсерт сработал только для указанных полей? Вариант с одним запросом для каждого id - не подходит. Так же, предварительно получить значения неуказанных столбцов - тоже не получится, так как все данные подтягиваются извне.
  • Вопрос задан
  • 127 просмотров
Пригласить эксперта
Ответы на вопрос 1
UPDATE Table1 SET name = ‘newname1’ WHERE id = 1;
И так далее...
А так Вы только вставляете (заменяете) строки, а не обновляете значения.
Для массовой модификации в конкретно этом примере:
UPDATE Table1 SET name = ("new"+name);
В конце-концов ознакомтесь с Заметки на полях о sqlite3
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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