Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗jvSpDbUpd 261 of 322 menu
◀ ▶

Обновление строк в SQLite

Запрос UPDATE задаёт новые значения столбцов и обычно ограничивает строки через WHERE. Без условия изменится вся таблица.

Подготовленный шаблон связывает новое значение и ключ строки:

import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.Statement; public class Main { public static void main(String[] args) throws Exception { try (Connection connection = DriverManager.getConnection("jdbc:sqlite:revise.db")) { try (Statement statement = connection.createStatement()) { statement.execute(""" CREATE TABLE IF NOT EXISTS notes ( id INTEGER PRIMARY KEY, title TEXT NOT NULL, done INTEGER NOT NULL ) """); statement.executeUpdate( "INSERT INTO notes (title, done) VALUES ('draft', 0)" ); } PreparedStatement update = connection.prepareStatement( "UPDATE notes SET done = ? WHERE id = ?" ); update.setInt(1, 1); update.setInt(2, 1); System.out.println(update.executeUpdate()); } } } }

Счётчик от executeUpdate показывает, сколько строк реально изменилось. Текстовые поля обновляют тем же способом:

import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.Statement; public class Main { public static void main(String[] args) throws Exception { try (Connection connection = DriverManager.getConnection("jdbc:sqlite:revise.db")) { PreparedStatement update = connection.prepareStatement( "UPDATE notes SET title = ? WHERE id = ?" ); update.setString(1, "final"); update.setInt(2, 1); update.executeUpdate(); PreparedStatement check = connection.prepareStatement( "SELECT title FROM notes WHERE id = ?" ); check.setInt(1, 1); var result = check.executeQuery(); if (result.next()) { System.out.println(result.getString("title")); } } } } }

Создайте таблицу meters в utility.db с полями label и reading, добавьте строку и измените показание на 105 по id 1.

Переименуйте метку с "kitchen" на "hall" для той же записи и выведите новую метку.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить