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

Выбор части столбцов в SQLite

Звёздочка * в SELECT тянет все колонки. Чаще перечисляют явный список - так меньше данных и проще читать результат.

Таблица может хранить служебные поля, которые в отчёт не попадают. В запросе оставляют только нужные имена:

import java.sql.DriverManager fun main() { DriverManager.getConnection("jdbc:sqlite:partial_view.db") .use { connection -> connection.createStatement().use { statement -> statement.execute( """ CREATE TABLE IF NOT EXISTS devices ( id INTEGER PRIMARY KEY, serial TEXT NOT NULL, note TEXT, warranty_until TEXT ) """ ) statement.executeUpdate( """ INSERT INTO devices (serial, note, warranty_until) VALUES ('SN-44', 'lab unit', '2027-01-01') """ ) val result = statement.executeQuery( "SELECT serial, warranty_until FROM devices" ) while (result.next()) { println(result.getString("serial")) println(result.getString("warranty_until")) } } } }

Порядок имён в списке задаёт порядок столбцов в ResultSet. Можно читать по индексу, но имена надёжнее при изменении запроса:

import java.sql.DriverManager fun main() { DriverManager.getConnection("jdbc:sqlite:partial_view.db") .use { connection -> val query = connection.prepareStatement( "SELECT note FROM devices WHERE serial = ?" ) query.setString(1, "SN-44") val result = query.executeQuery() if (result.next()) { println(result.getString("note")) } } }

Создайте таблицу lots в batch.db с полями code, qty и comment, добавьте партию и выведите только code и qty.

Выведите comment для партии с кодом "B-12", не выбирая остальные столбцы.

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