Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube
JC Mouse Bolivia
Index / Java / HSQLDB: Gestor de bases de datos libre en java

HSQLDB: Gestor de bases de datos libre en java

Autor jc mouse martes, marzo 26, 2019

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:

  • Escrito completamente en Java.
  • Sistema gestor de Base de datos relacional.
  • Sintaxis SQL estándar.
  • Tiempo de arranque mínimo y gran velocidad en las operaciones: SELECT, INSERT, DELETE y UPDATE.
  • Procedimientos almacenados en Java.
  • Integridad referencial (claves foráneas).
  • Tablas en disco de hasta 8GB

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

  • IDE Netbeas 8.x o el IDE de tu preferencia
  • El JDK debe estar en el PATH del sistema
  • java 8 o superior

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:

archivos rar

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:

  • [ARCHIVO]: Es la ubicación de la base de datos en disco
  • [ALIAS]: Es el nombre con el cual identificar la base de datos en la cadena de conexión

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.

consola database java

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.

cadena de conexion

  1. Setting Name: Nombre para la configuración
  2. Tipo: Ofrece valores preestablecidos para el controlador JDBC y la URL para los motores de base de datos más populares. selecciona «HSQL Database Engine Server»
  3. URL: Añade a la cadena de conexión el alias de la base de la datos
  4. Usuario y Contraseña: El usuario por defecto es «SA» sin contraseña

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

Administrador de base de datos

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:

proyecto base de datos

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:

consulta SQL

enjoy!!!

Tags

Si te ha gustado podrías compartirlo o dejar un comentario. ¡Muchas gracias!
Autor: JC Mouse

Yo soy yo :) JC Mouse, Soy orgullosamente boliviano soy fundador y CEO de la web jc-Mouse.net uno de las pocas web en emprendimiento y tecnología en Bolivia.

Toda la información que encuentres en este sitio es y sera completamente gratis siempre, puedes copiar, descargar y re-publicar si así lo deseas en otros blogs o sitios web, solo te pido a cambio que dejes una referencia a esta web. Esto nos ayuda a crecer y seguir aportando. Bye

Enjoy! :)

También Te Podría Interesar

Leer y escribir en un archivo binario

Leer y escribir en un archivo binario

Problema: Desarrolle un programa en consola con c# para escribir y leer información de un archivo binario. Los datos a e...

Blog MVC – Carga de páginas estáticas [p4]

Blog MVC – Carga de páginas estáticas [p4]

Cuarta parte de esta pequeña serie de tutoriales sobre [Crea tu blog con el patrón MVC y php] En esta cuarta entrega ver...

Construye la interfaz de facebook

Construye la interfaz de facebook

En este tutorial veremos un poco lo que es el diseño de interfaces en android, en lugar de colocar el ejemplo de uso de...

Ejercicios con Hashtable y C#

Ejercicios con Hashtable y C#

Ejercicio: Escriba un programa en consola que implemente un Hashtable, cree una clase «Persona«, este será el tipo de da...

Procedimientos Almacenados: Parámetros OUT

Procedimientos Almacenados: Parámetros OUT

En un post anterior conocimos que es y como funciona un parámetro de entrada IN en procedimientos almacenados y lenguaje...

Ejemplo RESTFul Webservice en Java

Ejemplo RESTFul Webservice en Java

En este post construiremos un Servicio Web en Java bajo el estandar REST (Representational State Transfer), el cual hace...

Comparte lo que sabes

Categorias

Últimas entradas

Quasar es un proyecto Open Source basado en el Framework Vue que nos permite desarrollar proyectos de todo tipo, por eje...

Continuando el post de «Introducción a Retrofit» donde realizamos una breve preparación a lo que es el uso de la librerí...

Editar un documento PDF no es tan sencillo como editar un archivo de texto por ejemplo, para editar archivos PDFs necesi...

¿Alguna vez tuviste la necesidad de hacer una captura de pantalla de una página web? Si es así, seguramente buscaste y d...

Herramientas

Generador de Enlaces a Whatsapp