Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube
JC Mouse Bolivia
Index / Base de Datos / Base de Datos / Firebird / Java / Conectar java con Firebird

Conectar java con Firebird

Autor jc mouse viernes, abril 20, 2012

En este tutorial veremos la forma de conectarse a una base de datos de Firebird utilizando el lenguaje Java y el IDE Netbeans.

¿Qué necesitamos?

Paso 1.

Lo primero que necesitamos es una base de datos, debes crear una utilizando la herramienta iSQL de firebird, sino sabes como pásate por este tutorial [Firebird iSQL], a la base de datos llámala con el nombre de “test.fdb”, esta database contara con una sola tabla la cual es:

01 CREATE TABLE persona(
02 	id varchar(4) primary key,
03 	nombre varchar(60)
04 );

Paso 2.

Ahora crea un nuevo proyecto en netbeans, no se hará uso de ninguna interfaz, solo necesitas crear una “clase fb_connection.java”, el código de la clase es:

01 import java.sql.Connection;
02 import java.sql.DriverManager;
03 import java.sql.PreparedStatement;
04 import java.sql.ResultSet;
05 import java.sql.SQLException;
06 import java.sql.Statement;
07 /**
08  * @web https://www.jc-mouse.net
09  * @author Mouse
10  */
11 public class fb_connection {
12 
13     private Connection connection = null;
14     private ResultSet resultSet = null;
15     private Statement statement = null;
16     private String db= "E:/firebird_db/test.fdb";
17     private String user = "sysdba";
18     private String password = "masterkey";
19 
20 //Constructor de la clase que se conecta a la base de datos una vez que se crea la instancia
21   public fb_connection(){
22       try{
23          Class.forName("org.firebirdsql.jdbc.FBDriver");
24          connection = DriverManager.getConnection("jdbc:firebirdsql://localhost/" + db,this.user, this.password);
25          System.out.println("Conectado a la base de datos [ " + this.db + "]");
26       }catch(Exception e){
27          System.out.println(e);
28       }
29     }
30 //___________________________________________________________________________________ Soy una barra separadora 🙂
31 /* METODO PARA INSERTAR UN REGISTRO EN LA BASE DE DATOS
32  * INPUT:
33  table = Nombre de la tabla
34  fields = String con los nombres de los campos donde insertar Ej.: campo1,campo2campo_n
35  values = String con los datos de los campos a insertar Ej.: valor1, valor2, valor_n
36  * OUTPUT:
37  * Boolean
38 */
39  public boolean insert(String table, String fields, String values)
40     {
41         boolean res=false;
42         //Se arma la consulta
43         String q=" INSERT INTO " + table + " ( " + fields + " ) VALUES ( " + values + " ) ";
44         //se ejecuta la consulta
45         try {
46             PreparedStatement pstm = connection.prepareStatement(q);
47             pstm.execute();
48             pstm.close();
49             res=true;
50          }catch(Exception e){
51             System.out.println(e);
52         }
53       return res;
54     }
55 //___________________________________________________________________________________ Soy una barra separadora 🙂
56 /* METODO PARA REALIZAR UNA CONSULTA A LA BASE DE DATOS
57  * INPUT:
58 
59  * OUTPUT:
60  String con los datos concatenados
61 */
62  public String select()
63  {
64     String res=" ID | Nombre  \n ";
65     try {
66       statement = connection.createStatement();
67       resultSet = statement.executeQuery("SELECT * FROM persona");
68       while (resultSet.next())
69       {
70         res+=resultSet.getString("id") + " | " + resultSet.getString("nombre") + " \n ";
71       }
72      }
73      catch (SQLException ex) {
74         System.out.println(ex);
75      }
76     return res;
77  }
78 //___________________________________________________________________________________ Soy una barra separadora 🙂
79     public void desconectar()
80     {
81         try {
82             resultSet.close();
83             statement.close();
84             connection.close();
85             System.out.println("Desconectado de la base de datos [ " + this.db + "]");
86         }        
87         catch (SQLException ex) {
88             System.out.println(ex);
89         }
90     }
91 //___________________________________________________________________________________ Soy una barra separadora 🙂 
92 }

Importante: En la variable “db” de tipo String, se coloca la ruta de nuestra base  de datos, para este ejemplo se encuentra en el disco E:\ en la carpeta “firebird_db”, el usuario y el password para la conexión a firebird, son lo que vienen por defecto, “sysdba” y “masterkey”, esta clase se conecta a firebird desde el constructor de clase, ademas cuenta con tres métodos, un insert(), un select() y un metodo para cerrar la conexión con firebird.

Si ya programaste java con otras bases de datos, podras darte cuenta que el manejo de datos es muy similar, la única variante por el momento es el driver de conexión.

Paso 3.

En la clase main del proyecto, debe agregar el código:

01 public class Main {
02     
03     public static void main(String[] args) {        
04         //Se crea el objeto y se conecta a firebird
05         fb_connection fbc = new fb_connection();
06         //Se insertan algunos datos
07         fbc.insert("persona", " id , nombre ", " '6655' , 'Charly Manson' ");
08         fbc.insert("persona", " id , nombre ", " '9876' , 'Marilyn Garcia' ");
09         fbc.insert("persona", " id , nombre ", " '7621' , 'Enanitos Azules' ");
10         //Se imprimen los datos de la tabla
11         System.out.println( fbc.select() );
12         fbc.desconectar();        
13     }
14     
15 }

Para terminar ejecuta el proyecto

run:
Conectado a la base de datos [ E:/firebird_db/test.fdb]
  ID  | Nombre  
 6655 | Charly Manson 
 9876 | Marilyn Garcia 
 7621 | Enanitos Azules 

Desconectado de la base de datos [ E:/firebird_db/test.fdb]

Eso es todo, bájate el proyecto AQUI

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

Codigo de Control en Visual Basic | Impuestos Bolivia

Codigo de Control en Visual Basic | Impuestos Bolivia

En esta oportunidad dejamos las fuentes del Generador de Código de Control de Impuestos Bolivia (Facturación Virtual), e...

Gráficos iReport con parámetros tipo Date

Gráficos iReport con parámetros tipo Date

Matando dos pájaros de un solo tiro :), doy respuesta a un par de preguntas que están relacionadas, en este post veremos...

Activar/Desactivar Bluetooth

Activar/Desactivar Bluetooth

En este tutorial crearemos una aplicación sencilla para activar y desactivar el bluetooth de nuestros teléfonos intelige...

Material Design: CardView (Tarjetas)

Material Design: CardView (Tarjetas)

Un CardView es parte de los estilos de Material Design y nos permite mostrar información dentro de tarjetas (Card), esta...

Transacciones – Uso de Commit y Rollback

Transacciones – Uso de Commit y Rollback

Cuando desarrollamos aplicaciones en java con base de datos debemos tener cuidado en que se cumplan un conjunto de carac...

Ecuación de segundo grado

Ecuación de segundo grado

Problema: Implemente el código necesario en Kotlin para resolver una ecuación de segundo grado de números reales: Soluci...

7 comentarios en “Conectar java con Firebird”

  1. Carlos dice:

    Si inserto desde consola, los datos no se veran al hacer un SELECT desde JAVA?
    eso me paso, hasta que hice el INSERT desde Java y ahora si se muestran los datos, claro sin los que ya tenia…

  2. José Fuster dice:

    Hola, buenos días. Querría saber si puedo conectar con firebird desde el entorno Eclipse (Luna), es decir, no es necesario que cambie el entorno para trabajar ¿verdad?.

    Gracias de antemano. Un saludo.

    1. Mouse dice:

      no, puedes usar el IDe que te resulte mas comodo

  3. Richard dice:

    Buenas … una consulta.. estoy trabajando con java y firebird… y tengo una pequeña consulta.. eh creado abm….. y estoy queriendo calcular el ultimo Id… + 1 …. y no se como lo podria hacer desde ya gracias y Saludos.!

  4. Richard dice:

    Buenas amigo… una consulta el manejor de reportes como seria java con firebird.. Saludos

    1. Mouse dice:

      :/ con firebird no lo he intentado

  5. Richard dice:

    Buenas amigo .. no tienen todavía la clase para conectar java con firebird 3.0 … esta conexión en si no funciona. . Ya cambie el jaybird pero no hay caso .. espero una respuesta favorable. . Saludos

Los comentarios estan cerrados

Comparte lo que sabes

Categorias

Últimas entradas

En un post anterior conocimos una herramienta Open Source con un conjunto de herramientas para el trabajo con imágenes e...

ImageMagick es un software de código abierto multiplataforma que contiene una serie de herramientas para leer, mostrar,...

OCR (Optical Character Recognition) en español, Reconociminto Optico de Caracteres, es el proceso por el cual  se extrae...

La misión espacial de la NASA, el Mars  2020 Rover Mission esta proyectada para lanzarse en julio de 2020 y su llegada s...

Android Bolivia

MAUS