
Controlador JDBC de Java para bases de datos SQLite con soporte de librería nativa en los principales sistemas operativos, permitiendo conectividad de base de datos estándar sin configuración.
SQLite JDBC es una biblioteca para acceder y crear archivos de base de datos SQLite en Java.
Nuestra biblioteca SQLiteJDBC no requiere configuración, ya que las bibliotecas nativas para los principales sistemas operativos, incluyendo Windows, macOS, Linux, etc., están ensambladas en un único archivo JAR (Java Archive).
➡️ Más ejemplos de uso y configuración están disponibles en USAGE.md
SQLite JDBC es una biblioteca para acceder a bases de datos SQLite a través de la API JDBC. Para el uso general de JDBC, consulte el Tutorial de JDBC o la Documentación de JDBC de Oracle.
sqlite-jdbc-(VERSION).jar
luego agregue este archivo jar a su classpath.Asumiendo que sqlite-jdbc-(VERSION).jar está en el directorio actual.
> javac Sample.java
> java -classpath ".;sqlite-jdbc-(VERSION).jar" Sample # in Windows
or
> java -classpath ".:sqlite-jdbc-(VERSION).jar" Sample # in macOS or Linux
name = leo
id = 1
name = yui
id = 2
Sample.java
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class Sample
{
public static void main(String[] args)
{
Connection connection = null;
try
{
// create a database connection
connection = DriverManager.getConnection("jdbc:sqlite:sample.db");
Statement statement = connection.createStatement();
statement.setQueryTimeout(30); // set timeout to 30 sec.
statement.executeUpdate("drop table if exists person");
statement.executeUpdate("create table person (id integer, name string)");
statement.executeUpdate("insert into person values(1, 'leo')");
statement.executeUpdate("insert into person values(2, 'yui')");
ResultSet rs = statement.executeQuery("select * from person");
while(rs.next())
{
// read the result set
System.out.println("name = " + rs.getString("name"));
System.out.println("id = " + rs.getInt("id"));
}
}
catch(SQLException e)
{
// if the error message is "out of memory",
// it probably means no database file is found
System.err.println(e.getMessage());
}
finally
{
try
{
if(connection != null)
connection.close();
}
catch(SQLException e)
{
// connection close failed.
System.err.println(e.getMessage());
}
}
}
}
Nuestro paquete del controlador JDBC de SQLite (es decir, sqlite-jdbc-(VERSION).jar) contiene tres tipos de bibliotecas nativas de SQLite (sqlite-jdbc.dll, sqlite-jdbc.jnilib, sqlite-jdbc.so), cada una compilada para Windows, macOS y Linux. Un archivo de biblioteca nativa apropiado se extrae automáticamente en la carpeta temporal de su sistema operativo cuando su programa carga el controlador org.sqlite.JDBC.
Desde sqlite-jdbc-3.6.19, los motores SQLite compilados de forma nativa se usarán para los siguientes sistemas operativos:
| x86 | x86_64 | armv5 | armv6 | armv7 | arm64 | ppc64 | |
|---|---|---|---|---|---|---|---|
| Windows | ✔ | ✔ | ✔ | ✔ | |||
| macOS | ✔ | ✔ | |||||
| Linux (libc) | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
| Linux (musl) | ✔ | ✔ | ✔ | ||||
| Android | ✔ | ✔ | ✔ | ✔ | |||
| FreeBSD | ✔ | ✔ | ✔ |
En los demás sistemas operativos no listados arriba, se utiliza SQLite puro en Java. (Aplica a versiones anteriores a 3.7.15)
Si desea usar la biblioteca nativa para su sistema operativo, compile el código fuente desde cero.
Descargue desde Maven Central o desde la página de lanzamientos.
<dependencies>
<dependency>
<groupId>org.xerial</groupId>
<artifactId>sqlite-jdbc</artifactId>
<version>(version)</version>
</dependency>
</dependencies>
Las instantáneas de la versión de desarrollo están disponibles en el repositorio de instantáneas de Sonatype.
La versión del proyecto sigue la versión de la biblioteca SQLite que está empaquetada en el jar, con un dígito adicional para indicar el incremento del proyecto.
Por ejemplo, si la versión de SQLite es 3.39.2, la versión del proyecto será 3.39.2.x, donde x comienza en 0 y se incrementa con cada lanzamiento que no cambie la versión de SQLite.
Si la versión de SQLite se actualiza a 3.40.0, la versión del proyecto se actualizará a 3.40.0.0.
Puede necesitar agregar el transformer del plugin shade para resolver el problema No suitable driver found for jdbc:sqlite:.
<transformer
implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
<resource>META-INF/services/java.sql.Driver</resource>
</transformer>
<dependency>
<groupId>org.xerial</groupId>
<artifactId>sqlite-jdbc</artifactId>
<version>(version)</version>
</dependency>
Siempre estamos buscando:
Por favor, lea nuestra guía de contribución.