Encontré su pregunta mientras buscaba información con SQLite y Java. Solo pensé en agregar mi respuesta que también publiqué en mi blog.
He estado codificando en Java desde hace un tiempo. También he sabido sobre SQLite pero nunca lo he usado ... Bueno, lo he usado a través de otros applications pero nunca en una aplicación que he codificado. ¡Así que lo necesité para un proyecto esta semana y es un uso tan simple!
Encontré un controlador Java JDBC para SQLite. Simplemente agregue el JAR file a su classpath e importe java.sql. *
Su aplicación de prueba creará un archivo de base de datos, enviará algunos comandos SQL para crear una tabla, almacenará algunos datos en la tabla, lo leerá y mostrará en consola. Creará el archivo test.db en el directorio raíz del proyecto. Puede ejecutar este ejemplo con java -cp .:sqlitejdbc-v056.jar Test
.
package com.rungeek.sqlite;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
public class Test {
public static void main(String[] args) throws Exception {
Class.forName("org.sqlite.JDBC");
Connection conn = DriverManager.getConnection("jdbc:sqlite:test.db");
Statement stat = conn.createStatement();
stat.executeUpdate("drop table if exists people;");
stat.executeUpdate("create table people (name, occupation);");
PreparedStatement prep = conn.prepareStatement(
"insert into people values (?, ?);");
prep.setString(1, "Gandhi");
prep.setString(2, "politics");
prep.addBatch();
prep.setString(1, "Turing");
prep.setString(2, "computers");
prep.addBatch();
prep.setString(1, "Wittgenstein");
prep.setString(2, "smartypants");
prep.addBatch();
conn.setAutoCommit(false);
prep.executeBatch();
conn.setAutoCommit(true);
ResultSet rs = stat.executeQuery("select * from people;");
while (rs.next()) {
System.out.println("name = " + rs.getString("name"));
System.out.println("job = " + rs.getString("occupation"));
}
rs.close();
conn.close();
}
}
Mi adición a esta lista es sqlite4java - http://code.google.com/p/sqlite4java - es un contenedor (no JDBC); precompilado para Windows, Mac, Linux. Es simple de usar e impone algunos contratos para ayudar al desarrollador a evitar el uso indebido de SQLite. – sereda
sqlite4java parece interesante, pero también tienen una gran comparación de los diversos contenedores disponibles: http://code.google.com/p/sqlite4java/wiki/ComparisonToOtherWrappers –
@kdt El problema que encontré con el controlador zentus es que no parece ser compatible con BLOB en absoluto – Martijn