Введение в базу данных в Java
Складской учёт или список терминов удобно держать в одном файле на диске, а не в десятке CSV. Такой файл SQLite содержит таблицы - именованные наборы колонок с одним типом строк. Каждая строка - запись, а отдельная колонка в записи - поле.
Программа на Java 27 обращается к файлу через JDBC:
строка "jdbc:sqlite:..." указывает путь к
базе, а команды на английском языке задают структуру
и данные. Такой текст называют SQL-запросом.
Типичная цепочка для новой таблицы: создать схему,
добавить строку и прочитать содержимое. Ниже файл
glossary.db получает таблицу terms
и одну запись:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class Main {
public static void main(String[] args) throws Exception {
try (Connection connection = DriverManager.getConnection("jdbc:sqlite:glossary.db")) {
try (Statement statement = connection.createStatement()) {
statement.execute("""
CREATE TABLE IF NOT EXISTS terms (
id INTEGER PRIMARY KEY,
word TEXT NOT NULL,
hint TEXT
)
""");
statement.executeUpdate("""
INSERT INTO terms (word, hint)
VALUES ('jdbc', 'Java database API')
""");
ResultSet result = statement.executeQuery(
"SELECT word, hint FROM terms",
);
while (result.next()) {
System.out.println(result.getString("word"));
System.out.println(result.getString("hint"));
}
}
}
}
}
Запрос CREATE TABLE описывает поля, INSERT
кладёт значения в колонки, SELECT возвращает
выбранные столбцы. Имена таблиц и полей в SQL пишут
латиницей, как в примере с terms.