Member 13598556 Ответов: 1

Хотите сделать условные правки в нескольких базах данных sqlite


Есть справочная база данных:
список литературы.дБ
Его одна из таблиц содержит поля:
Имя(char) C(десятичное число)

Данные, содержащие базы данных с идентичной структурой:
а....х.дБ
б....у.ДБ
с....з.дБ
.
.

Их одна из таблиц содержит поля:
NAME1(char) NAME2(char) Целое число)

Я хочу ссылаться и сравнивать значения C NAME1 и NAME2 в каждой записи файлов данных, а затем, если C1 > C2, изменить значение A на фиксированную величину. В какой программе я могу выполнить эту операцию? Не устанавливайте SQLite, предпочтите легкую утилиту, которая могла бы поддерживать эту функцию.

Что я уже пробовал:

Я попытался исследовать в sql studio и открыть в notepad++, но не смог придумать, как это сделать. Прошло уже некоторое время с тех пор, как я в последний раз касался sql, поэтому предпочел бы простое решение.

1 Ответов

Рейтинг:
0

Richard MacCutchan

Если это база данных SQLite, вы можете использовать программу командной строки SQL sqlite3. Видеть Оболочка Командной Строки Для SQLite[^].


Member 13598556

Спасибо, не могли бы вы дать некоторые наброски о том, как я могу сделать это выше с помощью утилиты.

Richard MacCutchan

Не совсем, а я не знаю, что тебе нужно. Но поскольку документация уже написана, это лучшее место для начала.

Member 13598556

Потратив некоторое время на утилиту sqlite3, я могу сделать выбор между таблицами referencetable и datatable и вывести значения C1 и C2 отдельно, но это не принесло большой пользы в моей вышеупомянутой цели. Прямо сейчас я пытаюсь сделать выбор:
выберите A из datatable where (здесь я хочу получить значения C, соответствующие NAME1 и NAME2 текущей записи чтения, из referencetable, а затем сделать сравнение). Использование команды select выводит совпадения для всей таблицы, поэтому я не могу использовать ее в скобках, какую команду я могу использовать для вызова только значения для текущей записи чтения? В конце концов я хочу обновить A=A+100 при выполнении условия между C1 и C2.