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

Que es y como se crea una Imagen Forense

Que es y como se crea una Imagen Forense

¿Que es y para que sirve una imagen forense? Una imagen forense es un «clon» (copia bit a bit) de algún dispositivo como...

ExecutorService: Tareas asíncronas

ExecutorService: Tareas asíncronas

Desde java 7 esta disponible la interface ExecutorService que se extiende de Executor y nos proporciona los métodos nece...

Crea formulario de login estilo Agents of Shield Marvel

Crea formulario de login estilo Agents of Shield Marvel

En esta oportunidad aprovechando el interés que tienen ahora los superheroes de Marvel, crearemos un formulario de logue...

Login estilo Google

Login estilo Google

Google tiene entre su formulario de autenticación de usuario para sus diferentes servicios (gmail, blogger, youtube, g+)...

Te enseño como generar imagenes con Google Bard

Te enseño como generar imagenes con Google Bard

Google Bard la inteligencia artificial de Google se actualiza con una mejora que entra a competir con el resto de IAs y...

Botón en java de Windows 8 Modern UI

Botón en java de Windows 8 Modern UI

En este tutorial crearemos un botón con el estilo del nuevo windows 8 Modern UI que primero se conoció como Metro UI.  E...

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

Si trabajas con redes sociales (RRSS) a continuación te muestro tres herramintas gratuitas que te ayudaran a la hora de...

Por lo general se usan transacciones a nivel base de datos y posteriormente se llaman estos a través de procedimientos a...

En este post, aprenderemos como conectar Visual Basic 6 con SQL Server, abrir una tabla, leer su contenido y mostrar est...

Lo que veremos en este post es la configuración del driver para PHP de SQL Server que ha creado Microsoft el cual permit...

Herramientas

Generador de Enlaces a Whatsapp