SQLite. SQLite es un sistema de gestión de bases de datos relacional compatible con ACID, contenida en una relativamente pequeña biblioteca escrita en C.
La biblioteca implementa la mayor parte del estándar SQL-92, incluyendo transacciones de base de datos atómicas, consistencia de base de datos, aislamiento, y durabilidad (ACID), triggers y la mayor parte de las consultas complejas.
La biblioteca puede ser usada desde programas en C/C++, aunque existen driver de conexión disponibles en otros lenguajes de programación interpretado como Java :). [Fuente: Santa Wikipedia]
Para conectar una base de datos SQLite con Java, necesitamos de un driver «SQLiteJDBC» que se puede encontrar gratis en internet, para crear una base de datos *.sqlite, se puede utilizar varios programas, si no quieres nada complejo, puedes utilizar un plugin para Firefox SQLite Manager que no pesa más de 200 KB, en sintesis que necesitamos:
– Java y Netbeans
– Driver de conexión SQLiteJDBC, debes bajarlo e instalar la libreria en Netbeans
SQLite es una base de datos embebida, ya esta presente en la mayoria de los sistemas operativos como windows, este ademas lo utiliza para otros programas como Photoshop y Firefox tambien lo usa. Para saber que lo tienes en tu pc busca el DLL sqlite3.dll, esta libreria se encuentra en C:\Windows\System32\
– Debes crear una base de datos SQLite, para este ejemplo la base de datos utilizada se llama dbTest.sqlite y contiene una sola tabla la cual es:
DROP TABLE IF EXISTS "persona"; CREATE TABLE "persona" ( "id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL , "nombre" CHAR, "apellido" CHAR );
Comencemos.
1. Crea un proyecto en netbeans, añade la referencia al conector SQLiteJDBC.
2. Crea una clase SQLite_conexion.java y coloca el código:
import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; /** * @web https://www.jc-mouse.net * @author Mouse */ public class SQLite_conexion { private Connection connection = null; private ResultSet resultSet = null; private Statement statement = null; private String db= "E:\\dbSQLite\\dbTest.sqlite"; //Constructor de clase que se conecta a la base de datos SQLite public SQLite_conexion() { try{ Class.forName("org.sqlite.JDBC"); connection = DriverManager.getConnection("jdbc:sqlite:" + this.db ); System.out.println("Conectado a la base de datos SQLite [ " + this.db + "]"); }catch(Exception e){ System.out.println(e); } } /* METODO PARA INSERTAR UN REGISTRO EN LA BASE DE DATOS * INPUT: table = Nombre de la tabla fields = String con los nombres de los campos donde insertar Ej.: campo1,campo2campo_n values = String con los datos de los campos a insertar Ej.: valor1, valor2, valor_n * OUTPUT: * Boolean */ public boolean insert(String table, String fields, String values) { boolean res=false; //Se arma la consulta String q=" INSERT INTO " + table + " ( " + fields + " ) VALUES ( " + values + " ) "; //se ejecuta la consulta try { PreparedStatement pstm = connection.prepareStatement(q); pstm.execute(); pstm.close(); res=true; }catch(Exception e){ System.out.println(e); } return res; } /* METODO PARA REALIZAR UNA CONSULTA A LA BASE DE DATOS * INPUT: * OUTPUT: String con los datos concatenados */ public String select() { String res=" ID | Nombre | Apellido \n "; try { statement = connection.createStatement(); resultSet = statement.executeQuery("SELECT * FROM persona ; "); while (resultSet.next()) { res+=resultSet.getString("id") + " | " + resultSet.getString("nombre") + " | " + resultSet.getString("apellido") + " \n "; } } catch (SQLException ex) { System.out.println(ex); } return res; } public void desconectar() { try { resultSet.close(); statement.close(); connection.close(); System.out.println("Desconectado de la base de datos [ " + this.db + "]"); } catch (SQLException ex) { System.out.println(ex); } } }
Si ya programaste java junto a otros tipos de base de datos MySQL, Postgres, Firebird, Acces, etc, te darás cuenta que es prácticamente el mismo procedimiento de conexión y uso, a excepción de que SQLite no utiliza usuario y contraseña. Después hay que indicar la ruta donde esta el archivo *.sqlite además de la llamada a la libreria «org.sqlite.JDBC».
3. Para terminar, implementamos esta clase en el Main.
public class Main { public static void main(String[] args) { //Se crea instancia a objeto y se conecta a SQLite SQLite_conexion fbc = new SQLite_conexion(); //Se insertan algunos datos fbc.insert("persona", " nombre, apellido ", " 'Charly', 'Manson' "); fbc.insert("persona", " nombre, apellido ", " 'Marilyn' , 'Garcia' "); fbc.insert("persona", " nombre, apellido ", " 'Marcelo', 'Chamboneti' "); //Se imprimen los datos de la tabla System.out.println( fbc.select() ); fbc.desconectar(); } }
Ejecutamos y tenemos:
run: Conectado a la base de datos SQLite [ E:\dbSQLite\dbTest.sqlite] ID| Nombre | Apellido 1 | Charly | Manson 2 | Marilyn | Garcia 3 | Marcelo | Chamboneti Desconectado de la base de datos [ E:\dbSQLite\dbTest.sqlite]
FIN 🙂
Bájate el proyecto netbeans AQUI
iReport nos da la posibilidad de dar un formato condicional a los diferentes registros resultado de nuestras consultas S[...]
El control de paginación de JavaFX (Pagination) se usa para navegar a través de varias paginas de contenido divididas en[...]
La Interfaz Grafica de Usuario en Java nos brinda la posibilidad de cambiar la apariencia de nuestras aplicaciones, ya s[...]
La Universidad Leland Stanford Junior, conocida mundialmente como la Universidad Stanford, es una universidad privada es[...]
Netbeans es uno de los entornos de desarrollo integrado (Integrated Development Environment – IDE) más conocidos[...]
En este post vamos a crear una aplicación sencilla para conectar C# con MySQL. Manos a la obra 🙂 Necesitamos – Con[...]