HyperSQL DataBase (HSQLDB) es un moderno administrador de bases de datos relacionales, es portátil e implementado en java puro. Se puede incrustar con su aplicación java y también usar por separado. Es una base de datos muy pequeña que admite casi todas las características del sistema de base de datos estándar.
Entre sus características podemos mencionar:
En este post, nos conectaremos al servidor HSQLDB, crearemos una base de datos y realizaremos una consulta previa conexión desde una aplicación java.
Requisitos
Paso 1: Descargar HSQLDB
A la fecha de realizar este post, la ultima versión estable de HSQLDB es la 2.4.1 que funciona con el JDK 8, 9 y 10. Disponible en <Download HSQLDB>
Descarga el paquete y descomprime en algún lugar de tu disco duro. Los archivos que en encontraras son los siguientes:
Paso 2: Iniciar el Servidor y crear una base de datos
Abre una consola y ubícate en la carpeta «data», el comando necesario es:
java -classpath ../lib/hsqldb.jar org.hsqldb.server.Server --database.0 file:[ARCHIVO] --dbname.0 [ALIAS]
donde:
Por ejemplo:
java -classpath ../lib/hsqldb.jar org.hsqldb.server.Server --database.0 file:demo/demodb --dbname.0 demo
Creamos una base de datos con el nombre «demodb» en la carpeta «demo», su alias sera «demo». Tanto el nombre de la base de datos como su alias no necesariamente debe ser el mismo, aunque si lo prefieres así, no hay ningún problema.
Una vez ejecutado el comando se levantara el servidor junto a la base de datos en el puerto 9001. No cierres esta ventana, en cuanto la ventana se cierra el servidor también.
Paso 3: Database Manager
Database Manager es una herramienta de consulta de base de datos GUI simple con una visualización de árbol de las tablas.
Para iniciar el Administrador dirígete a la carpeta «lib» y ejecuta el archivo hsqldb.jar. A continuación se despliega una ventana de conexión donde debemos realizar algunos cambios.
Para terminar presiona [OK]
Si todo salio bien ya estas conectado a tu base de datos, pero este se encuentra vació, este administrador te permite llenar tu base de datos con tablas y datos ya preestablecidos ideal para realizar una prueba rápida. Para realizar esto:
Dirígete al menu Option -> Insert test data
Paso 4: Conexión y consulta a HSQLDB desde Java
Crea un proyecto java en Netbeans (o el IDE de tu preferencia) y añade el jar hsqldb.jar, es decir:
A continuación, modifica el Main de la siguiente manera:
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; /** * @see https://www.jc-mouse.net/ * @author mouse */ public class Main { static final String URL = "jdbc:hsqldb:hsql://localhost/demo"; static final String USUARIO = "SA"; static final String PASSWORD = ""; public static void main(String[] args) { try (Connection con = DriverManager.getConnection(URL, USUARIO, PASSWORD)) { Statement statement = con.createStatement(); ResultSet rs = statement.executeQuery("SELECT * FROM Customer"); while (rs.next()) { Long id = rs.getLong("ID"); String firstname = rs.getString("FIRSTNAME"); String lastname = rs.getString("LASTNAME"); String street = rs.getString("STREET"); String city = rs.getString("CITY"); System.out.println(String.format("%d | %s | %s | %s | %s", id, firstname, lastname, street, city)); } } catch (SQLException ex) { System.err.println(ex.getMessage()); } } }
ejecutando tenemos:
enjoy!!!
«MyBatis es una herramienta de persistencia Java que se encarga de mapear sentencias SQL y procedimientos almacenados co[...]
Hace un par de años atras google para el aniversario del juego de Pacman saco un doodle en su homenaje, ese doodle que s[...]
Java proporciona Collection Framework, que define varias clases e interfaces para representar un grupo de objetos como u[...]
En tutoriales pasados creábamos demasiadas líneas de código en el mismo lugar para dibujar en la pantalla, cosa que nos[...]
En un tutorial anterior se creo un WebServices [Java WebServices] utilizando java y Netbeans, en esta ocasión se da cont[...]
Un SGA «Sistema de Gestión de Almacenes» es un programa informático destinado a gestionar las entradas y salidas de pro[...]