UNIDAD 8: JAVA JSP INTRODUCION A LAS BASES DE DATOS

TEMA 11: OPERACIONES CON CAMPOS JAVA JSP

Este es tambien un caso comun con elementos de una tabla, sin embargo es tambien facil de resolver.

Es necesario recordar primero algunas cosas elementales:

1.- Recordar que el numero de columna en una tabla empieza en 1, esto es que para realizar alguna operación por ejemplo la columna edad del ejemplo que estamos siguiendo, su numero de columna es la 2.

2.- La operación que se plantee se puede realizar con todos los renglones de la tabla o con un solo renglon de la tabla(del resultset).

3.- En el ejemplo se realiza la operación con todos los renglones de la tabla y no olvidar que se tiene que usar la instruccion sql Update para que la nueva información se actualize en disco, recordar que los cambios que se hacen a una tabla es realmente al resultset, que a su vez es una tabla o base de datos en la memoria de la maquina del cliente o usuario es por esta RAZON QUE LOS cambios hay que actualizarlos o pasarlos con UPDATE a la base de datos en disco.

El siguiente programa le aumenta 50 a todas las edades.

Prog45.jsp

<%@ page import="java.io.*,java.util.*,java.net.*,java.sql.*" %>
<%
if(request.getParameter("OK") != null)
{
// declarando y creando objetos y variables
int edad, clave;
String q;
Connection canal = null;
ResultSet tabla= null;
Statement instruccion=null;
String strcon = "jdbc:mysql://localhost/mibase?user=lauro&password=laurosoto";
// crando canal o enlace
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) {};
// cargando el resultet
try {
tabla = instruccion.executeQuery("select * from mitabla");
} catch(SQLException e) {};
// operaciones en el resultset
while(tabla.next()){
clave = tabla.getInt(1);
edad =tabla.getInt(3);
edad=edad+50;
// actualizacion a la tabla en disco con update
q="update mitabla set edad= "+edad+ " where clave = "+clave+";";
try{
instruccion.executeUpdate(q);
// cargando nuevo resultset actualizado
tabla = instruccion.executeQuery("select * from mitabla");
// dejando apuntador en renglon apropiado, recordar que volvimos a releer la tabla y por tanto
// hay que poner el apuntador en el renglon apropiado
tabla.absolute(clave);
}catch(SQLException e) {}; };//fin while
// cerrando todo
try {canal.close();instruccion.close();tabla.close();} catch(SQLException e) {};
out.println("EDADES AUMENTADAS");
};
// construyendo forma dinamica
out.println("<FORM ACTION=prog45.jsp METHOD=post>");
out.println("<INPUT TYPE=SUBMIT NAME=OK VALUE=EDAD+50><BR>");
out.println("</FORM>");
%>

nota: programa autoanotado.

image84.jpg

TAREAS PROGRAMACION JAVA JSP

1.- construir una tabla en microsoft access que traiga matricula, nombre, calif1, calif2, calif3 y promedio, cargar en access unos 5 renglones de alumnos, no cargar promedio, el promedio lo deberan calcular con un programa.

Politica de Privacidad