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

Animación de JProgressBar con hilos

Animación de JProgressBar con hilos

Si nuestra aplicación tiene que llevar a cabo un cierto trabajo que no sabemos cuanto durará y que a la vez consume much...

Introducción a Python en Java

Introducción a Python en Java

Python es un lenguaje de programación interpretado,  de programación multiparadigma, ya que soporta orientación a objeto...

Pruebas Unitarias con PHPUnit

Pruebas Unitarias con PHPUnit

PHPUnit es un framework que se utiliza para escribir tests en PHP, Netbeans nos permite configurarlo y usarlo fácilmente...

Colocar imagenes en un JComboBox

Colocar imagenes en un JComboBox

Para agregar imágenes a un JComboBox, partiremos de un proyecto Netbeans con la siguiente estructura: Tenemos dos clases...

Números narcisistas o de Armstrong

Números narcisistas o de Armstrong

Los números narcisistas o números de Armstrong son aquellos números enteros positivos  cuya suma de las n-ésimas potenci...

Tutorial HeidiSQL: Sesion, Base de datos y Tablas

Tutorial HeidiSQL: Sesion, Base de datos y Tablas

HeidiSQL es un software libre y de código abierto que permite conectarse a servidores MySQL, MariaDB, Percona Server, Mi...

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

El gigante tecnologico Google a puesto un bonito Doodle en su buscador que esta fascinando a sus millones de usuarios qu...

WhatsApp anuncio a través de su blog que ya se encuentra disponible la función de envío de fotos y videos TEMPORALES, es...

Muchas de las innovaciones computacionales de la NASA se desarrollaron para ayudar a explorar el espacio, pero ahora la...

TikTok es una plataforma de microvideos muy popular entre los jóvenes el cual cuenta ya con millones de videos cortps de...

Herramientas

Generador de Enlaces a Whatsapp