I. Tema: Statement
1. Contenido
1.1.-Definición
Un objeto Statement se usa para enviar sentencias SQL a la base de datos. Actualmente hay tres tipos de objetos Statement, todos los cuales actúan como contenedores para la ejecución de sentencias en una conexión dada: Statement, PreparedStatement que hereda de Statement y CallableStatement que hereda de PreparedStatement. Estas estàn especializadas para enviar tipos particulares de sentencias SQL, Un objeto Statement se usa para ejecutar una sentencia SQL simple sin parámetros. Un objeto PreparedStatement se usa para ejecutar sentencias SQL precompiladas con o sin parámetros IN; y un objeto CallableStatement se usa para ejecutar un procedimieno de base de datos almacenado.
La interfase Statement suminstra métodos básicos para ejecutar sentencias y devolver resultados. La interfase PreparedStatement añade métodos para trabajat con los parámetros IN; y la interfase CallableStatement añade métodos para trabajar con parameters OUT.
1.2.-Propiedades
Empezamos por descargar el conector MySQL para Java desde su sitio web: conector MySQL. Una vez que hemos descargado el fichero .zip correspondiente a nuestra plataforma lo descomprimimos en el equipo y buscamos dentro de la carpeta principal un archivo llamado mysql-connector con extensión .jar.
Ahora tenemos que agregar este archivo jar a nuestra aplicación de NetBeabs, para ello hacemos Click derecho sobre el nombre del proyecto y seleccionamos propiedades. En la ventana siguiente seleccionamos en librerías y posteriormente pulsamos en el botón –>Add Jar/folder. Finalmente accedemos a la localización del conector que descargamos anteriormente y pulsamos OK.
Después de importar el conector ya casi estamos preparados, aunque antes de continuar necesitamos un servidor local y una base de datos.
En mi caso utilizo phpMyAdmin para crear la bd java1 con nombre de usuario root y sin contraseña. También la tabla Motor con 3 columnas: Marca, Modelo y Potencia.
En la siguiente clase insertamos 2 registros en la tabla motor con el método executeUpdate(). Finalmente mostramos los datos en pantalla ordenados por Potencia.
public void CargaCombo(){
try{
cnx.rs=cnx.stm.executeQuery("SELECT * FROM Linea ORDER BY 1");
while(cnx.rs.next()){
jCboLinea.addItem(cnx.rs.getString(2));
}
}catch(Exception a){
System.out.println(a.getMessage());
}
}
public void Mostrar(){
String cod;
try{
cod=jTblArticulo.getValueAt(jTblArticulo.getSelectedRow(), 0).toString();
cnx.rs=cnx.stm.executeQuery("SELECT * FROM Articulo WHERE codarticulo=' "+cod+" ' ");
if(cnx.rs.next()){
this.jTxtCod.setText(cnx.rs.getString(1));
this.jTxtDes.setText(cnx.rs.getString(2));
this.jTxtPre.setText(cnx.rs.getString(3));
this.jTxtStock.setText(cnx.rs.getString(4));
this.jCboLinea.setSelectedItem(cnx.rs.getString(5));
}
}catch(Exception a){
System.out.println(a.getMessage());
}
}
public void LimpiarTabla(DefaultTableModel model){
for(int i=model.getRowCount()-1;i>=0;i--){
model.removeRow(i);
}
}
public void Llenartabla(){
try{
cnx.rs=cnx.stm.executeQuery("SELECT codarticulo,descripcion,precio,stock,idlinea FROM Articulo");
DefaultTableModel model=(DefaultTableModel)jTblArticulo.getModel();
LimpiarTabla(model);
2. Resumen
sirve para procesar una sentencia SQL estática y obtener los resultados producidos por ella. Solo puede haber un ResultSet abierto para cada objeto Statement en un momento dado.
3. Summary
It serves to process a static SQL statement and obtaining the results produced by it. There can only be an open ResultSet object for each Statement at any given time.
4. Recomendaciones
5. Conclusiones
Todas la variables de conexion (cn), Statement (St) y ResultSet(reg) fueron declaradas fuera de todos los metodos, es decir son globales y pueden verse en toda la clase no importa en que proceso lo utilizemos, y para saldar la duda, anteriormente dije que todos estos son metodos, asi es pero por que ejecutar y consulta los llame funciones, es sencillo recordemos algo de teoria, toda funcion retorna un valor es por ello que se le llama funciones a ejecutar y a consulta por que regresan el valor de la variable error y reg respectivamente.
6. Apreciación del Equipo
7. Glosario de Términos
8. Bibliografía o Linkografia