Sqlite в Eclipse

У новичка всегда возникает много простых, но очень конкретных вопросов, что и как делать, вот я и попробую на пальцах объяснить, как работать с базой данных sqlite на Java в среде программирования Eclipse.
Здесь я не буду писать, что такое Java и Eclipse, где их скачать и как устанавливать, но зато мой урок можно будет выполнять сразу после написания программы «Hello World».
Поехали! Начнем с создания проекта.
Создаем проект: File -> New -> Java Project


В форме заполняем Project name: sqlite и жмем кнопку Finish.


Проект создан.
Создаем java-файл, в котором будет написан текст программы, для этого: File -> New -> Class


В форме заполняем Name: sqlite, ставим галочку public static void main, снимаем галочку Inherited abstract methods и жмем кнопку Finish.


Файл scr/sqlite.java создан, можно приступать к написанию программы.
Переходим к работе с базой данных, я выбрал sqlite, но можно с любой другой, принципы одинаковые. Необходимо сказать несколько слов о базах данных в Java, JDBC (Java DataBase Connectivity) – стандарт для связи Java-программы с базой данных, подключение происходит с помощью так называемых драйверов, подробнее можно найти уйму информации. Теперь сразу к делу, нужно найти драйвер sqlite, который является jar-файлом, и подключить к проекту: создаем в корне проекта папку lib и копируем туда файл драйвера sqlite, в Eclipse в панели Package Explorer (слева) кликаем правой кнопкой мыши и выбираем Refresh.


После этого в Package Explorer появится папка lib и драйвер sqlitejdbc-v056.jar


Теперь драйвер нужно подключить к проекту, кликаем правой кнопкой мыши на название проекта в Package Explorer и выбираем Properties.


Выбираем пункт Java Build Path -> вкладка Libraries -> кнопка Add JARs…


Выделяем файл драйвера и кликаем на кнопке OK.


А вот теперь как раз пора писать код. Я просто приведу текст файла scr/sqlite.java.

import java.sql.*;
import org.sqlite.SQLite;
import org.sqlite.JDBC;

public class sqlite {

public static void main(String[] args) throws Exception{
Class.forName("org.sqlite.JDBC");
Connection bd = DriverManager.getConnection("jdbc:sqlite:sqlite.db3");
Statement st = bd.createStatement();
st.execute("create table if not exists 'TABLE1' ('name1' int, 'name2' text, 'name3' text);");
st.execute("insert into 'TABLE1' ('name1', 'name2', 'name3') values (1, 'name1', 'name2'); ");
st.execute("insert into 'TABLE1' ('name1', 'name2', 'name3') values (2, 'name3', 'name4'); ");
st.execute("insert into 'TABLE1' ('name1', 'name2', 'name3') values (3, 'name5', 'name6');");
ResultSet rs = st.executeQuery("select * from TABLE1");
while (rs.next())
{
System.out.print (rs.getString(1)+" ");
System.out.print (rs.getString(2)+" ");
System.out.println(rs.getString(3));
}
bd.close();
st.close();
rs.close();

}

}

Не вдаваясь в лишние подробности, поясню лишь самое главное.

Class.forName("org.sqlite.JDBC");
Connection bd = DriverManager.getConnection("jdbc:sqlite:sqlite.db3");
Statement st = bd.createStatement();


Эта конструкция позволяет подключить саму базу данных.

st.execute("create table if not exists 'TABLE1' ('name1' int, 'name2' text, 'name3' text);");
st.execute("insert into 'TABLE1' ('name1', 'name2', 'name3') values (1, 'name1', 'name2'); ");
st.execute("insert into 'TABLE1' ('name1', 'name2', 'name3') values (2, 'name3', 'name4'); ");
st.execute("insert into 'TABLE1' ('name1', 'name2', 'name3') values (3, 'name5', 'name6');");
ResultSet rs = st.executeQuery("select * from TABLE1");

Как легко догадаться, это sql-запросы

while (rs.next())
{
System.out.print (rs.getString(1)+" ");
System.out.print (rs.getString(2)+" ");
System.out.println(rs.getString(3));
}

Вывод информации в консоль среды Eclipse

bd.close();
st.close();
rs.close();

Закрытие всего, что было открыто.
Можете скачать весь проект.

Вот и все! Моей задачей было только дать толчок, дерзайте.

Метки: