top of page

Gestor Base de datos

Ahora para poder acceder a los datos de una base de datos se debe realizar por medio de instrucciones SQL

SELECT : Realiza consultas en la base de datos

UPDATE Modifica los datos de una tabla

DELETE Elimina registros de una tabla

INSERT: genera un nuevo registro en una tabla

Para realizar cualquier acción sobre la base de datos (consulta, insertar nuevos registros, modificar los existentes o borrar), necesitamos

   Connection conn = null;     //VARIABLE PARA CONECTARNOS CON LA BASE DE DATOS
    Statement stm=null;       // CONTIENE LA INSTRUCCION SQL
    ResultSet productoResultSet;   //OBTIENE EL RESULTADO DE LA CONSULTA
    Producto productoHallado;     //OBTIENE LOS ATRIBUTOS DESPUES DE UNA CONSULTA PARA ENVIARLOS A LA VISTA
    int clave,cantidad,precio;       VARIABLES TIPO ATRIBUTO DE PRODUCTO
    String nombre;
 

METODO CONSULTAR

La consulta de datos es una de las funciones más importantes en las aplicaciones Web.  el comando MySQL para hacer consultas es SELECT. Para realizar una consulta en una tabla de la base de datos, desde Java se ejecutan cuatro pasos:

1.- Establecer la conexión con la base de datos.
2.- Crear un objeto de la clase Statement para poder codificar instrucciones.
3.- Codificar la instrucción con la consulta.
4.- Cerrar la conexión con la base de datos.

Ahora agregamos a la clase ProductoBD.java, el método consultar(), el cual sirve para buscar un producto en la tabla productos de la base de datos, y contiene la codificación de los cuatro pasos mencionados. Observar que la instruccion para crear un Statement debe estar dentro de un try-catch, y que para realizar una consulta en la base de datos se usa el método executeQuery() del objeto de clase Statement con la sintaxis:

stm.executeQuery("select * from tabla where condicion");

El parámetro de executeQuery() es la instrucción MySQL en formato String, y no hace falta terminarlo con punto y coma ";".

public Producto consultar(int clavep){
try{

    conn = ConectaBD.abrir();
    stm = conn.createStatement();
    productoResultSet = stm.executeQuery("SELECT * FROM producto WHERE clave="+clavep);
   if(!productoResultSet.next()){
      System.out.println(" No se encontro el registro");
      ConectaBD.cerrar();
      return null;
     }else{
        System.out.println("Se encontró el registro");
        clave = productoResultSet.getInt("clave");
        nombre = productoResultSet.getString("nombre");
        precio = productoResultSet.getInt("precio");
        cantidad = productoResultSet.getInt("cantidad");
        productoHallado = new Producto(clave,nombre,precio,cantidad);
        ConectaBD.cerrar();
        return productoHallado;
     }
   }catch(SQLException e){
      System.out.println("Error en la base de datos.");
      return null;
}
}

MÉTODO REGISTRAR

 

 

public boolean registrar(int clave, String nombre,int precio, int cantidad)
 {
        int resultUpdate = 0;
         try{
                  conn = ConectaBD.abrir();
                  stm = conn.createStatement();
                 resultUpdate = stm.executeUpdate("insert into producto values("+clave+",'" + nombre + "'," +precio+","+cantidad+ ");");
                if(resultUpdate != 0)
                {
                       ConectaBD.cerrar();
                       return true;
                 }
                else
                 {
                       ConectaBD.cerrar();
                       return false;
                  }
         }
         catch (SQLException e)
        {
               System.out.println("Error en la base de datos.");
               return false;
        }
     }

METODO MODIFICAR

     public boolean modificar(int clave, String nombre,int precio, int cantidad)
 {
        int resultUpdate = 0;
         try{
                  conn = ConectaBD.abrir();
                  stm = conn.createStatement();
                 resultUpdate = stm.executeUpdate("update producto set nombre='"+nombre+"',precio='"+precio+"',cantidad='"+cantidad+"' WHERE clave ="+clave);
                if(resultUpdate != 0)
                {
                       ConectaBD.cerrar();
                       return true;
                 }
                else
                 {
                       ConectaBD.cerrar();
                       return false;
                  }
         }
         catch (SQLException e)
        {
               System.out.println("Error en la base de datos.");
               return false;
        }
     }
    
    METODO ELIMINAR
    
    
    public boolean eliminar(int clavep)
 {
        int resultUpdate = 0;
         try{
                  conn = ConectaBD.abrir();
                  stm = conn.createStatement();
                 resultUpdate = stm.executeUpdate("delete  FROM producto WHERE clave="+clavep);
                if(resultUpdate != 0)
                {
                       ConectaBD.cerrar();
                       return true;
                 }
                else
                 {
                       ConectaBD.cerrar();
                       return false;
                  }
         }
         catch (SQLException e)
        {
               System.out.println("Error en la base de datos.");
               return false;
        }
     }
    
  METODO LEERTODOS  
   
public ArrayList<Producto> leerTodos(){
ArrayList<Producto> productos = new ArrayList<Producto>();
try{
      conn = ConectaBD.abrir();
      stm = conn.createStatement();
      productoResultSet = stm.executeQuery("select * from producto");
      if(!productoResultSet.next()){
          System.out.println(" No se encontraron registros");
          ConectaBD.cerrar();
          return null;
        }
      else
      {
         do{
            clave = productoResultSet.getInt("clave");
            nombre = productoResultSet.getString("nombre");
            precio = productoResultSet.getInt("precio");
            cantidad = productoResultSet.getInt("cantidad");
            productoHallado = new Producto(clave,nombre,precio,cantidad);
            productos.add(productoHallado);
           }while(productoResultSet.next());
          ConectaBD.cerrar();
        return productos;
      }
     }
     catch(SQLException e){
         System.out.println("Error en la base de datos.");
         return null;
        }
}

}
 

Departamento de Sistemas de Información                                                              Jefe de Oficina del Departamento

Instituto Tecnológico Metropolitano - ITM | Institución Universitaria                           Leonel Velasquez torres
Teléfono: (574) 460 07 27 Extensiones 5567 - 5554                                                 
Auxiliares Administartivas del Departamento
Calle 54 A # 30 - 01     Bloque L piso 3 oficina 303                                                   Luz Marina Montes  -  Diana Cristina Galeano

Medellín - Antioquia - Colombia                                                

                                                               Sitio elaborado por Jorge Hernan Suaza Jimenez

bottom of page