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

Conectar C Sharp con MySQL

Conectar C Sharp con MySQL

Ya tengo varios post sobre conexión a base de datos en varios lenguajes y claro no podía faltar c#, el siguiente tutoria...

Código Único de Factura en C Sharp

Código Único de Factura en C Sharp

En este post implementamos el «Código Único de Factura» según la documentación otorgada por Impuestos Bolivia en su siti...

Uso de BorderPane

Uso de BorderPane

BorderPane es un layout que distribuye los nodos hijos en 5 posiciones TOP, LEFT, BOTTOM, RIGHT y CENTER Los nodos hijos...

Agregar JComboBox a un JTable

Agregar JComboBox a un JTable

En este post, crearemos una tabla swing que implemente un control jcombobox en una columna de una tabla, llenaremos con...

Tutorial Gráficos Vectoriales SVG – Parte I

Tutorial Gráficos Vectoriales SVG – Parte I

Estructura Interna de un archivo SVG. <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD...

Rompecabezas en C# (Tutorial)

Rompecabezas en C# (Tutorial)

En este tutorial crearemos un sencillo rompecabezas de un tamaño de 4×6 con 24 piezas que se podrán mover haciendo...

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 muchas ocasiones es necesaria la personalización de componentes java para que estos se adecuen a nuestros requerimien...

En este post mostramos como personalizar el Header (encabezado) de un componente JTable en Java colocando iconos, centra...

El JTable de Java es un gran componente para mostrar datos en una tabla de una forma rápida y sencilla, sin embargo en v...

En este post veremos un ejemplo sencillo de como descargar desde Internet archivos de cualquier tipo (*.jpg, *.png, *.gi...

Herramientas

Generador de Enlaces a Whatsapp