Está en la página 1de 5

EJERCICIOS DE BASES DE DATOS

FASE G


En el mismo proyecto llamado AplicacionesJavaBD cree un nuevo formulario JFrame
con el nombre EliminarClientes y elabore un programa que permita eliminar un
registro especfico de la tabla clientes.

Crear la interfaz de usuario

Al nuevo formulario adicinele los siguientes objetos: 6 JLabel, 2 JButton, 5 JTextField.
El formulario deber visualizarse como se aprecia en la siguiente figura:

Figura 4.30 Formulario JFrame EliminarClientes.

Modificar propiedades de los objetos de la interfaz de usuario

Modifique las respectivas propiedades de los objetos, segn la siguiente tabla

Tabla 4.18 Propiedades a modificar en el JFrame EliminarClientes.

Control Propiedad Valor
JLabel1 Cambiar nombre variable! lbltitulo
Editar texto (text) Eliminar un registro de la tabla
Clientes.
Font Times New Roman, Negrita, 12
JLabel2 Cambiar nombre variable! lblnit
Editar texto (text) Nit:
JLabel3 Cambiar nombre variable! lblempresa
Editar texto (text) Empresa:
JLabel4 Cambiar nombre variable! lbldireccion
Editar texto (text) Direccin:
JLabel5 Cambiar nombre variable! lbltelefon
Editar texto (text) Telfono:
JLabel6 Cambiar nombre variable! lblciudad
Editar texto (text) Ciudad:
JTextField1 Cambiar nombre variable! txtnit
Editar texto (text) En blanco
JTextField2 Cambiar nombre variable! txtempresa
Editar texto (text) En blanco
JTextField3 Cambiar nombre variable! txtdireccion
Editar texto (text) En blanco
JTextField4 Cambiar nombre variable! txttelefono
Editar texto (text) En blanco
JTextField5 Cambiar nombre variable! txtciudad
Editar texto (text) En blanco
JButton1 Cambiar nombre variable! botonbuscar
Editar texto (text) Nit a buscar
JButton2 Cambiar nombre variable! botoneliminar
Editar texto (text) Guardar Modificaciones
JFrame Title Modificar Registros
La interfaz de usuario quedara como se muestra en la siguiente figura:

Figura 4.31 Interfaz de usuario EliminarClientes.

Escribir cdigo

Seleccione el objeto botonbuscar, pulse el botn derecho del mouse y escoja la opcin
eventos, luego Action y d clic sobre actionPerformed para visualizar el mtodo
botonbuscarActionPerformed y escriba el siguiente cdigo entre las llaves {}:

try {
String criterio= txtnit.getText();
ConectarBD conexion=new ConectarBD();
Statement sentencia=conexion.getConexion().createStatement();
ResultSet resultado=sentencia.executeQuery("select * from clientes where
nit='"+criterio+"'");
txtempresa.setEditable(false);
txtdireccion.setEditable(false);
txttelefono.setEditable(false);
txtciudad.setEditable(false);
while (resultado.next())
{
txtempresa.setText(""+resultado.getString("empresa"));
txtdireccion.setText(""+resultado.getString("direccion"));
txttelefono.setText(""+resultado.getString("telefono"));
txtciudad.setText(""+resultado.getString("ciudad"));
}
resultado.close();
conexion.getConexion().close();
}
catch(Exception e)
{
JOptionPane.showMessageDialog(this,"Error:"+e,"Informacin",
JOptionPane.INFORMATION_MESSAGE);
}

Anlisis del cdigo

Se crea una variable de tipo String llamada criterio a la cual se le asigna el contenido
del objeto txtnit y al objeto resultado se le asigna la sentencia SQL select * from
clientes where nit concatenado con el valor de la variable criterio. Utilizando el
mtodo setEditable como false se deshabilitan cada uno de los objetos JTextField para
que no se pueda editar la informacin de stos. Con un ciclo while se cargar la
informacin de cada uno de los campos del registro encontrado por intermedio del
mtodo getString() en los respectivos objetos JTextField.

Seleccione el objeto botoneliminar, pulse el botn derecho del mouse y escoja la opcin
eventos, luego Action y d clic sobre actionPerformed para visualizar el mtodo
botoneliminarActionPerformed y escriba el siguiente cdigo entre las llaves {}:

int seleccion = JOptionPane.showOptionDialog(this,"Desea ELIMINAR EL REGISTRO
(Si/No)", "Seleccione una opcin",JOptionPane.YES_NO_CANCEL_OPTION,
JOptionPane.QUESTION_MESSAGE,null,new Object[] { "Si", "No"},"Si");
if((seleccion + 1)==1)
{
try
{
ConectarBD conexion=new ConectarBD();
String instruccion= "Delete clientes where nit='" +txtnit.getText() +"'";
conexion.sentencia=conexion.getConexion().prepareStatement(instruccion);
conexion.sentencia.execute();
JOptionPane.showMessageDialog(this,"Registro Eliminado","Informacin",
JOptionPane.INFORMATION_MESSAGE);
conexion.getConexion().close();
}
catch(SQLException e)
{
JOptionPane.showMessageDialog(this,"Error SQL:"+e,"Informacin",
JOptionPane.INFORMATION_MESSAGE);
}
}
else
{
JOptionPane.showMessageDialog(this,"Registro NO ELIMINADO","Informacin",
JOptionPane.INFORMATION_MESSAGE);
}


Anlisis del cdigo

Se crea una variable llamada seleccion de tipo int a la cual se le asigna la ventana de
dialogo SI/NO de tipo JOptionPane. Utilizando la estructura de decisin if se vlida si
el valor de la variable seleccion+1 es igual a 1. Si se cumple la condicin en el bloque
try se crea la instancia conexion de tipo ConectarBD(), adems se crea una variable
llamada instruccion de tipo String a la que se le asigna la sentencia SQL Delete
clientes where nit= concatenado con el valor del objeto txtnit. Al objeto sentencia de
la clase ConectarBD se le asigna la conexin a la base de datos y se enva el valor de la
variable instruccion por intermedio del mtodo prepareStatement y se ejecuta por
intermedio de execute(). En una ventana JOPtionPane se confirma la eliminacin del
registro y se cierra la conexin. Por los bloque catch se implementa las excepciones
Exception y SQLExcepction.

Nota: Si en el cdigo se aprecian errores, es posible que NetBeans IDE no reconozca
algunas de las clases utilizadas, d clic derecho sobre el mouse y seleccione la opcin
reparar importaciones o simplemente pulse Ctrl + Maysculas +I.

Ejecutar el proyecto

Seleccione el formulario JFrame y pulse el botn derecho del mouse y escoja la opcin
Ejecutar archivo o simplemente pulse Maysculas + F6. Si se digitan los valores que se
muestran en la siguiente figura:

Figura 4.32 Visualizacin del registro a eliminar.


Al pulsar el botn Eliminar Registro?, se observar la siguiente figura:

Figura 4.33 Confirmacin de eliminacin del registro en la tabla clientes.

Si se pulsa el botn No, se visualizar la siguiente figura:

Figura 4.34 Confirmacin de registro no eliminado de la tabla clientes.

También podría gustarte