UNIDAD 8: JAVA JSP INTRODUCION A LAS BASES DE DATOS

TEMA 13: EDICION DE REGISTROS SQL UPDATE

Editar registros significa cambiar el contenido de algunos de los campos o columnas por nueva informacíón o para corregir algun error de captura original o para agregar alguna columna que no existia por modificación de la tabla o la base de datos.

En general se tiene otro problema de sql UPDATE, sin embargo ahora se tendran que construir dos metodos uno de busqueda normal y otro de actualizacion estos metodos son:

1.- BUSQUEDA: programa normal de busqueda por clave, pero ahora debera construir una forma.html dinamica, que contendra un form action apuntando o ejecutandose a si mismo es decir prog47.jsp, ademas tendra todos los input text necesarios para cargar cada celda del renglon de busqueda.

2.- EDICION: recoje los datos ya modificados de la forma.html dinamica y realiza directamente un sql update en la base de datos.

prog47.jsp

<%@ page import="java.io.*, java.util.*, java.net.*, java.sql.*" %>
<%! int clave=0; %>
<%
// codigo del evento BUSQUEDA y recordar construir una nueva forma dinamica
if(request.getParameter("BUSCAR") != null)
{
Connection canal = null;
ResultSet tabla= null;
Statement instruccion=null;
String strcon = "jdbc:mysql://localhost/mibase?user=lauro&password=laurosoto";
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
canal=DriverManager.getConnection(strcon);
instruccion = canal.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE);
} catch(java.lang.ClassNotFoundException e){} catch(SQLException e) {};
clave = Integer.parseInt(request.getParameter("CLAVEB"));
String q="select * from mitabla where clave="+clave;
try { tabla = instruccion.executeQuery(q);
tabla.next();
out.println("<FORM ACTION=prog47.jsp METHOD=POST>");
out.println("NOMBRE:<INPUT TYPE=TEXT NAME=NOMBRE VALUE= "+ tabla.getString(2)+ "><BR>");
out.println("EDAD:<INPUT TYPE=TEXT NAME=EDAD VALUE= "+ tabla.getString(3)+ "><BR>");
out.println("ESTATURA:<INPUT TYPE=TEXT NAME=ESTATURA VALUE= "+ tabla.getString(4)+ "><BR>");
out.println("<INPUT TYPE=SUBMIT NAME=EDITAR VALUE=EDITAR><BR>");
tabla.close();instruccion.close();canal.close();
} catch(SQLException e) {} catch(Exception ex){};
}; // fin evento buscar
// codigo de evento EDICION
String temp2=request.getParameter("EDITAR");
if(temp2==null)temp2=" ";
if(temp2.compareTo("EDITAR")==0)
{
String nombre,q ;
int edad; float estatura;
Connection canal = null;
ResultSet tabla= null;
Statement instruccion=null;
String strcon = "jdbc:mysql://localhost/mibase?user=lauro&password=laurosoto";
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
canal=DriverManager.getConnection(strcon);
instruccion = canal.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE);
} catch(java.lang.ClassNotFoundException e){} catch(SQLException e) {};
try {
tabla = instruccion.executeQuery("select * from mitabla");
} catch(SQLException e) {};
nombre = request.getParameter("NOMBRE");
edad = Integer.parseInt(request.getParameter("EDAD"));
estatura = Float.parseFloat(request.getParameter("ESTATURA"));
q = "UPDATE mitabla SET "+ "NOMBRE='"+ nombre+ "', EDAD="+ edad+",estatura="+estatura+" WHERE clave=" + clave+";";
try{instruccion.executeUpdate(q); }catch(SQLException e) {};
try {tabla.close();instruccion.close();canal.close();} catch(SQLException e) {};
out.println("REGISTRO EDITADO");
}; // fin evento editar
// construyendo forma dinamica
out.println("<FORM ACTION=prog47.jsp METHOD=post>");
out.println("CLAVE EDITAR:<INPUT TYPE=TEXT NAME=CLAVEB><BR>");
out.println("<INPUT TYPE=SUBMIT NAME=BUSCAR VALUE=BUSCAR ><BR>");
out.println("</FORM>");
%>

Veamos la corrida completa:

(tabla original)

image91.jpg

forma dinamica que construye prog47.jsp

image92.jpg

continua prog47.jsp

image93.jpgnueva tabla

image94.jpg

no era murcielago era batman!!

1.- TAREAS PROGRAMACION JAVA JSP construir programas de edición para sus tablas y bases de datos

Politica de Privacidad