lunes, 18 de febrero de 2019

Cargar datos a una jTable con datos de Access



Bien lo primero que te tenemos que hacer es crear un jFrame para crear la tabla. Creado el jFrame lo primero que hacemos es colocar un Scroll Pane nos quedara de la siguiente forma:



Bien ahora ingresaremos un Table dentro del Scroll Pane así:



Después de haber creado la tabla debemos borrar su contenido, debemos dar clic derecho en la tabla y seleccionamos la opción Table Contens es la primera que nos sale:


Nos mostrara una ventana y daremos clic en la opción de columnas:


Bien ahora solo tenemos que seleccionar las columnas para poderlas borrar:



Después de haber eliminado todas las columnas de la tabla nos quedara así:



Ahora tenemos que crear el código para eso nos vamos a source e importamos las siguientes Librerías: 

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;




Bueno recuerden que ya deben estar conectados con la base de datos Access, Ahora crearemos el modelo de la tabla:

DefaultTableModel tabla = new DefaultTableModel();   //Codigo que crea el modelo de la tabla

Si quieren que la tabla no se pueda editar tendran que añadir el siguiente código:

DefaultTableModel tabla = new DefaultTableModel() {
        @Override
        public boolean isCellEditable(int Fila, int Colum) {
            return false;
        }
    };



Después de haber creado el modelo de la tabla vamos a crear los títulos de los campos para eso crearemos un método llamado  cargarTitulosColumas():

public void cargarTitulosColumas(){
        tabla.addColumn("Nombre");
        tabla.addColumn("Apellido");
        tabla.addColumn("Direccion");
        this.jTable1.setModel(tabla);
    } 



Lo único que nos falta es crear un método para realizar la consulta y llenar la tabla para eso crearemos otro método llamado cargarDatos();

    public void cargarDatos() {
        String datos[] = new String[3];    //Variable que almacena los datos de la consulta
        String sql = "select Id, Nombre, Apellido, Direccion, from Datos";  //Consulta sql
        try {
            ResultSet resultado = sentencia.executeQuery(sql);  //Linea que ejecuta la consulta sql y almacena los datos en resultado

            while (resultado.next()) {                                    //Bucle que recorre la consulta obtenida
                datos[0] = resultado.getString("Nombre");
                datos[1] = resultado.getString("Apellido");
                datos[2] = resultado.getString("Direccion");
                tabla.addRow(datos);
            }
        } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null, "Error al cargar los Datos\n" + ex);
        }
    }


Ahora solo nos toca llamar a los métodos desde el constructor:




Listo ahora cada vez que ejecutemos el  programa nos cargara los datos de la base de Access.




Insertar Datos en Access con Java NetBeans



En este ejemplo vamos a ingresar esos tres datos a la base de ACCESS, Después de que ya tengamos conectada la base debemos crear el código que ingresara los datos.

- Primero crearemos tres variables en las que se almacenaran los tres datos del frame:

 String nombre = this.txtNombre.getText();
 String apellido = this.txtApellido.getText();
 String direccion = this.txtDireccion.getText();





- Después debemos crear el código sql:

//Variable "sql " que contiene el código sql
//Practica es el nombre de la taba de nuestra base de datos y Nombre, Apellido y Direccion son los capos

String sql = "insert into Practica(Nombre,Apellido,Direccion) values " + "('"nombre + "','"apellido + "','" direccion + "')";


- Bien ahora nos faltaría ejecutar la código slq 

//"sentecia" es la variable global que fue creada al realizar la conexión con la base de datos

sentecia.executeUpdate(sql);

//Esta instruccion debe ir rodeada de un try y un catch. Nos quedaría de la siguiente forma:

          try {
            sentecia.executeUpdate(sql);
        } catch (SQLException ex) {
             //Mensaje que saldrá cuando ocurra un error al ingresar los datos
            JOptionPane.showMessageDialog(null, "Error, sus datos no fueron ingresados\n" + ex);
        }



- Bien como podemos ver ya tenemos los datos ingresados en Access

miércoles, 7 de diciembre de 2016

Conectar JAVA con base de datos ACCESS




Lo primero que necesitamos es descargar el driver llamado ucanaccess-3.0.2. Usaremos la versión (3.0.2) esta la pueden descargar desde el siguiente enlace:
 https://mega.nz/#F!So8GGTpT!u2jgrB0YKiG6rIxgRNX0Hg

Después de la descarga nos quedaran los siguientes archivos:


Bien ahora nos vamos a NetBeans para importar las librerías en el proyecto que deseen.

Damos clic izquierdo en la carpeta de librerías y damos clic en Add JAR/FOLDER: 


Ahora seleccionaremos todas las librerías manteniendo presionada la tecla de control y damos clic en abrir.



Nos quedara de la siguiente forma:


Ahora importamos las siguientes librerías:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;


Ahora crearemos las siguientes variables que son conexion y sentencia de manera global de esta forma nos permitirá utilizarlas en todo el proyecto:

Connection conexion;
Statement sentencia;



El siguiente paso es crear un método llamado conectatarBaseDatos(), para crear la conexión.

public void conectatarBaseDatos() {
        try {
            Class.forName("net.ucanaccess.jdbc.UcanaccessDriver"); //Linea que carga el driver
        } catch (ClassNotFoundException e) {
            JOptionPane.showMessageDialog(null, "Error al cargar Dirver");
        }
        try {
  conexion = DriverManager.getConnection("jdbc:ucanaccess://src\\BaseDatos\\Proyecto.accdb");
//En esta parte tenemos que cambiar la ruta en la que se encuentra nuestra base de datos 
//Ejemplo "jdbc:ucanaccess://C:\\Proyecto.accdb" hace referencia que esta en el disco local C
        } catch (SQLException e) {
            JOptionPane.showMessageDialog(null, "Error en la dirección de la base de datos");
        }
        try {
            sentencia = conexion.createStatement();
        } catch (SQLException e) {
            JOptionPane.showMessageDialog(null, "Error al crear la conexión con la base de datos");
        }
    }



Después de haber creado el método nos falta llamarlo, esto lo haremos desde el constructor:


Lo ultimo que nos falta seria cerrar la base de datos cuando cerremos el proyecto esto se hace de la siguiente manera:

Nos dirigimos al diseño de nuestro proyecto y damos clic derecho en frame: 



Nos mostrara las siguientes opciones en la cual crearemos un evento llamado windowsClosing:



Bien ahora escribiremos el siguiente código que sirve para cerrar la conexión con la base de datos de ACCESS:

   try {
            sentencia.close();
        } catch (SQLException e) {
            JOptionPane.showMessageDialog(null, "Error al cerrar la base de datos" + e);
        }


Y listo ya tenemos conectado nuestro proyecto java con la base de datos ACCESS.





Cargar datos a una jTable con datos de Access

Bien lo primero que te tenemos que hacer es crear un jFrame para crear la tabla. Creado el jFrame lo primero que hacemos es coloc...