CLASE 02

14
  Lenguaje de Programación BD TEMA2: CONEXIONES, COMANDOS ES!"EMAS DE DATOS EN #DBC LO$%OS Que el participante aplique los conceptos teóricos de la tecnología JDBC y logre la conexión con una base de datos desde una aplicación Java, al mismo tiempo el participante logrará diferenciar el propósito e importancia de cada una de las interfaces JDBC %ES"MEN Diversos ejemplos que aplican los diferentes objetos JDBC. DESA%%OLLO  Antes de empez ar con el desarro llo del tema de esta seman a, hagamos un rep aso del uso de Ecepcion es en Java, dado a que lo aplicaremos a lo largo de nuestra asignatura. &' Con(ro) De Errore* De Ejecución Durante el desarrollo de nuestros programas se pueden presentar diversos tipos de errores, los cuales se clasifican de la siguiente forma! a' Errore* de Com+i)ación:  "on aquellos errores que se presentan en el momento de la compilaci#n nuestro progra ma, el compilado r informa el n$mero de l%nea donde se produjo el error . Este tipo de error se produce generalmente cuando no cumplimos rigurosamente las reglas de sintais del &enguaje de 'rogramaci#n. Algun os (DEs tiene el atributo (ntelligent "ense con el cual autom)ticamen te subra*an la l%nea de error mientras se escribe el c#digo fuente. ' Errore* de Lóg ica: Este error se percibe cuando los resultados emitidos por nuestro programa son incorrectos e imprecisos, la raz#n de este tipo de error se debe al mal planteamiento de la l#gica del programador. c' Errore* en Tiem+o de Ejecución:  Este error se pres enta imprev ista ment e dur ante el tiempo de ejecuci#n +runtime- de nuestro programa, cuando ste no soporta una instrucci#n, * como resultado se cuelga o cierra. Estos tipo s de errores debe n ser controlado s por la misma aplicaci#n, * no deber%an ocasionar que la ejecuci#n colapse. 'recisamente las ecepciones o Eceptions en Java controlan este $ltimo tipo de errores. MANE#O DE EXCEPCIONES  A diferencia de otros lenguajes de programaci#n orientados a objetos como C/C00, Java incorpora en el propio lenguaje )a ge*(ión de errore* en tiempo de ejecuci#n. 1C#mo lo hace2 3eamos! -!u. e* una E/ce+(ion0 En el lenguaje Java, una Exception es un objeto que se genera autom)ticamente cuando se produce un error de ejecuci#n, una ecepci#n representa al error en s%, contiene informaci#n del error producido.  Algunas excepciones son fatales * provocan que se deba finalizar la ejecuci#n del programa. En este caso conviene terminar ordenadamente * dar un mensaje eplicando el tipo de error que se ha producido. 4tras, como por ejemplo , al no encontra r un fichero en el que ha* que leer o esc rib ir algo, pueden ser recuperables. En este caso el programa debe dar al usuario la oportunidad de corregir el error +indicando una nueva localizaci#n del fichero no encontrado-. P%O1ESO%: %icardo Coe))o Pa)omino &

description

PROGRAMA

Transcript of CLASE 02

Lenguaje de Programacin BDTEMA2: CONEXIONES, COMANDOS Y ESQUEMAS DE DATOS EN JDBC

LOGROS

Que el participante aplique los conceptos tericos de la tecnologa JDBC y logre la conexin con una base de datos desde una aplicacin Java, al mismo tiempo el participante lograr diferenciar el propsito e importancia de cada una de las interfaces JDBC.

RESUMENDiversos ejemplos que aplican los diferentes objetos JDBC.

DESARROLLOAntes de empezar con el desarrollo del tema de esta semana, hagamos un repaso del uso de Excepciones en Java, dado a que lo aplicaremos a lo largo de nuestra asignatura.

1. Control De Errores De Ejecucin

Durante el desarrollo de nuestros programas se pueden presentar diversos tipos de errores, los cuales se clasifican de la siguiente forma:

a. Errores de Compilacin: Son aquellos errores que se presentan en el momento de la compilacin nuestro programa, el compilador informa el nmero de lnea donde se produjo el error. Este tipo de error se produce generalmente cuando no cumplimos rigurosamente las reglas de sintaxis del Lenguaje de Programacin. Algunos IDEs tiene el atributo Intelligent Sense con el cual automticamente subrayan la lnea de error mientras se escribe el cdigo fuente.

b. Errores de Lgica: Este error se percibe cuando los resultados emitidos por nuestro programa son incorrectos e imprecisos, la razn de este tipo de error se debe al mal planteamiento de la lgica del programador.

c. Errores en Tiempo de Ejecucin: Este error se presenta imprevistamente durante el tiempo de ejecucin (run-time) de nuestro programa, cuando ste no soporta una instruccin, y como resultado se cuelga o cierra. Estos tipos de errores deben ser controlados por la misma aplicacin, y no deberan ocasionar que la ejecucin colapse.

Precisamente las excepciones o Exceptions en Java controlan este ltimo tipo de errores.

MANEJO DE EXCEPCIONESA diferencia de otros lenguajes de programacin orientados a objetos como C/C++, Java incorpora en el propio lenguaje la gestin de errores en tiempo de ejecucin. Cmo lo hace? Veamos:

Qu es una Exception?En el lenguaje Java, una Exception es un objeto que se genera automticamente cuando se produce un error de ejecucin, una excepcin representa al error en s, contiene informacin del error producido. Algunas excepciones son fatales y provocan que se deba finalizar la ejecucin del programa. En este caso conviene terminar ordenadamente y dar un mensaje explicando el tipo de error que se ha producido. Otras, como por ejemplo, al no encontrar un fichero en el que hay que leer o escribir algo, pueden ser recuperables. En este caso el programa debe dar al usuario la oportunidad de corregir el error (indicando una nueva localizacin del fichero no encontrado).

Excepciones Estndar de JavaLos errores se representan mediante dos tipos de clases derivadas de la clase Throwable: Error y Exception. La siguiente figura muestra parcialmente la jerarqua de clases relacionadas con Throwable:

La clase Error est relacionada con errores de compilacin, del sistema o de la JVM. De ordinario estos errores son irrecuperables y no dependen del programador ni debe preocuparse de capturarlos y tratarlos.

La clase Exception tiene ms inters. Dentro de ella se puede distinguir muchas clases derivadas que clasifican los diferentes tipos de errores que se pueden producir en Java. Ejemplo de algunas Excepciones:

NullPointerException : Exception producida cuando se hace referencia a una posicin de una estructura de datos que no apunta a ningn dato.IndexOutBoundException: Exception producida cuando se hace referencia a un ndice que sobrepasa la longitud de la estructura de datos.NegativeArraySizeException: Exception que se produce cuando se hace referencia a un nmero de ndice negativo.EOFException: Exception que se produce cuando el puntero ha avanzado una posicin posterior al ltimo registro de una tabla.

Todas las excepciones por heredar de Throwable usan los mtodos siguientes:

1. String getMessage() Extrae el mensaje asociado con la excepcin.2. String toString() Devuelve un String que describe la excepcin.3. void printStackTrace() Indica el mtodo donde se lanz la excepcin.

Un buen programa debe gestionar correctamente todas o la mayor parte de los errores que se pueden producir. Java para este fin utiliza la estructura try catch y los Exceptions.

Estructura try catchCuando en un mtodo se produce una situacin anmala es necesario lanzar una excepcin, la cual se desarrolla con la siguiente secuencia:1. Se crea un objeto Exception de la clase adecuada.2. Se lanza la excepcin con la sentencia throw seguida del objeto Exception creado.

Esta excepcin deber ser capturada (catch) y gestionada, para este fin Java nos brinda la estructura try catch.

Ejemplo 1:try { String cad="Universidad Privada Telesup"; int n=0; String nn=JOptionPane.showInputDialog("Ingrese la posicin "); n=Integer.parseInt(nn); char cc=cad.charAt(n); JOptionPane.showMessageDialog(null,"El carcter es: "+cc); } catch (Exception ex) { JOptionPane.showMessageDialog(null,ex.getMessage()); }

Explicacin del ejemplo 1: La zona del try, incluye al cdigo que esta siendo controlado por posibles errores de ejecucin. La zona del catch es la zona que atrapa al objeto Exception, en el caso de producirse un error; al producirse el error, se interrumpe la ejecucin de la zona try y el control del programa se direcciona hacia la zona del try y visualizar un mensaje con la descripcin del error.

La estructura try catch puede utilizar varios bloques catch, en los cuales puede atrapar diversos tipos de Exceptions (errores), estos deben ser colocados desde lo ms especfico a lo ms genrico. Esto permite personalizar la accin a realizar segn el tipo de error producido. Veamos un segundo ejemplo:Ejemplo 2: try { String cad="Universidad Privada Telesup"; int n=0; String nn=JOptionPane.showInputDialog("Ingrese la posicin "); n=Integer.parseInt(nn); char cc=cad.charAt(n); JOptionPane.showMessageDialog(null,"El caracter es: "+cc); } catch (StringIndexOutOfBoundsException ex1) { JOptionPane.showMessageDialog(null,"Error: La posicin esta fuera del rango de la cadena."); } catch (NumberFormatException ex2) { JOptionPane.showMessageDialog(null,"Error: El valor que Ud. ingres no corresponde a un nmero."); } catch (Exception ex) { JOptionPane.showMessageDialog(null,ex.getMessage()); }}

Explicacin del ejemplo 2: En este caso existen 3 bloques catch, cada uno de ellos atrapa un diferente tipo de error, segn sea el caso. Nunca se realizar ms de un bloque catch, solo se realizar el bloque que corresponda al error producido, los primeros dos bloques corresponden a errores especifico, el ultimo es un Exception genrico que corresponde a cualquier otro tipo de error.

La clusula finally: Esta clusula es opcional y se coloca al final de la estructura, lo que se programe en este bloque se realizar de todos modos sea que se haya producido un error o no.Ejemplo 3: try { String cad="Universidad Privada Telesup"; int n=0; String nn=JOptionPane.showInputDialog("Ingrese la posicin "); n=Integer.parseInt(nn); char cc=cad.charAt(n); JOptionPane.showMessageDialog(null,"El caracter es: "+cc); } catch (StringIndexOutOfBoundsException ex1) { JOptionPane.showMessageDialog(null,"Error: La posicin esta fuera del rango de la cadena."); } catch (NumberFormatException ex2) { JOptionPane.showMessageDialog(null,"Error: El valor que Ud. ingres no corresponde a un nmero."); } catch (Exception ex) { JOptionPane.showMessageDialog(null,ex.getMessage()); } finally { JOptionPane.showMessageDialog(Programa finalizado); }}

Clausula throws

Esta clusula se puede acompaar en la declaracin de un mtodo, esto quiere decir que si dentro del mtodo se produce un Exception (error), entonces dicho Exception ser disparado hacia fuera (hacia el lugar desde donde se invoc al mtodo, esta zona necesariamente debe estar dentro de un try catch ), tal como se muestra en el siguiente ejemplo:

Ejemplo 4public class Demo { public Demo() { } public void mostrar() throws Exception { String cad="Universidad Privada Telesup"; int n=0; String nn=JOptionPane.showInputDialog("Ingrese la posicin "); n=Integer.parseInt(nn); char cc=cad.charAt(n); JOptionPane.showMessageDialog(null,"El carcter es: "+cc); } public static void main(String args[]) { try { Demo obj=new Demo(); obj.mostrar(); } catch (Exception ex1) { JOptionPane.showMessageDialog(null,"Error: La posicin esta fuera del rango de la cadena."); } }}

2. Estableciendo una conexin JDBC

Pasos necesarios para Establecer una Conexin JDBC

1. Importar las clases del paquete java.sqlPara utilizar esta tecnologa, debemos importar las clases del paquete: java.sqlDe la siguiente manera:package comercial;Importacin necesaria para trabajar con JDBC

import java.sql.*;

public class GestionBD { // Contenido de la clase}

2. Registrar el Driver a utilizar en la clase DriverManager: Pasar el nombre del paquete donde se encuentra el JDBCpackage comercial;import java.sql.*;

public class GestionBD {public static void main(String[] args) { Statement stmt=null;// Declara el Objeto Statement Connection cn=null;// Declara el Objeto Connection ResultSet rs=null;// Declara el Objeto ResultSet try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); // Registrar el Driver }catch(Exception e) { System.out.println("Error al Cargar el Driver"); } }}

3. Abrir la conexinLa forma comn de establecer una conexin con una base de datos es llamar al mtodo getConnection() de la clase DriverManager, a este mtodo se le debe pasar como parmetro la URL de JDBC que identifica a la base de datos con la que queremos realizar la conexin. La ejecucin de este mtodo devolver un objeto Connection que representar la conexin con la base de datos.

La sintaxis general para realizar una conexin es la siguiente:Connection cn=DriverManager.getConnection(url);

Ejemplo:package comercial;import java.sql.*;

public class GestionBD {public static void main(String[] args) { Statement stmt=null;// Declara el Objeto Statement Connection cn=null;// Declara el Objeto Connection ResultSet rs=null;// Declara el Objeto ResultSet

String url="jdbc:odbc:datos";// Se define la cadena de conexin // (nombre del ODBC:datos) String usuario=""; String password="";

try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Abrir conexin

cn=DriverManager.getConnection(url,usuario,password); } catch(Exception e) { System.out.println("Error el proceso acceso a la base de datos"); System.out.println(e.getMessage()); } } }

4. Definir el objeto Statement para el manejo de comandos. (Se requiere que la conexin est abierta)Ejemplo:package comercial;import java.sql.*;

public class GestionBD {public static void main(String[] args) { Statement stmt=null;// Declara el Objeto Statement Connection cn=null;// Declara el Objeto Connection ResultSet rs=null; // Declara el Objeto ResultSet

String url="jdbc:odbc:datos";// Se define la cadena de conexin (nombre del // ODBC:datos) String usuario=""; String password="";

try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); cn=DriverManager.getConnection(url,usuario,password);Crear el objeto comando

stmt=cn.createStatement(); // Se crea el comando

} catch(Exception e) { System.out.println("Error el proceso acceso a la base de datos"); System.out.println(e.getMessage()); } } }

5. Crear el esquema de datos (Objeto ResultSet) : A partir de la ejecucin del comando Select.package comercial;import java.sql.*;

public class GestionBD {public static void main(String[] args) { Statement stmt=null;// Declara el Objeto Statement Connection cn=null;// Declara el Objeto Connection ResultSet rs=null; // Declara el Objeto ResultSet

String url="jdbc:odbc:datos";// Se define la cadena de conexin // (nombre del ODBC:datos) String usuario=""; String password="";

try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); cn=DriverManager.getConnection(url,usuario,password); stmt=cn.createStatement(); // Se crea el comandoCrear el esquema de Datos

rs=stmt.executeQuery("select * from Clientes"); } catch(Exception e) { System.out.println("Error el proceso acceso a la base de datos"); System.out.println(e.getMessage()); } } }

6. Visualizar el contenido del esquema de datospackage comercial;import java.sql.*;

public class GestionBD {public static void main(String[] args) { Statement stmt=null;// Declara el Objeto Statement Connection cn=null;// Declara el Objeto Connection ResultSet rs=null;// Declara el Objeto ResultSet

String url="jdbc:odbc:datos";// Se define la cadena de conexin (nombre del // ODBC:datos) String usuario=""; String password="";

try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); cn=DriverManager.getConnection(url,usuario,password); stmt=cn.createStatement(); // Se crea el comando rs=stmt.executeQuery("select * from Clientes");

while(rs.next()) // mtodo avance al siguiente y devuelve true {Visualiza el contenido del esquema de datos. Se puede utilizar.

System.out.print(rs.getString("Codcli")+"\t"); System.out.print(rs.getString("Apecli")+"\t"); System.out.print(rs.getString("Nomcli")+"\t"); System.out.print(rs.getString("Dircli")+"\t"); System.out.println(""); } } catch(Exception e) { System.out.println("Error el proceso acceso a la base de datos"); System.out.println(e.getMessage()); } } }

7. Cerrar la conexin y el esquema de datos.Ejemplo completo:package comercial;import java.sql.*;

public class GestionBD {public static void main(String[] args) { Statement stmt=null;// Declara el Objeto Statement Connection cn=null;// Declara el Objeto Connection ResultSet rs=null;// Declara el Objeto ResultSet

String url="jdbc:odbc:datos";// Se define la cadena de conexin (nombre del // ODBC:datos) String usuario=""; String password="";

try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); cn=DriverManager.getConnection(url,usuario,password); stmt=cn.createStatement(); // Se crea el comando rs=stmt.executeQuery("select * from Clientes");

while(rs.next()) // mtodo avance al siguiente y devuelve true { System.out.print(rs.getString("Codcli")+"\t"); System.out.print(rs.getString("Apecli")+"\t"); System.out.print(rs.getString("Nomcli")+"\t"); System.out.print(rs.getString("Dircli")+"\t"); System.out.println(""); }Cierra la conexin y el esquema de datos.

rs.close(); cn.close(); } catch(Exception e) { System.out.println("Error el proceso acceso a la base de datos"); System.out.println(e.getMessage()); } } }

3. Ejecutando Sentencias SQL

LA INTERFAZ STATEMENT

Este tipo de interfaz nos permite definir un tipo de comando MDL de SQL (select, insert, update, delete) y ejecutarlo.

Los mtodos ms importantes de la interfaz Statement son:

MtodoDescripcin

void cancel() Cancela el objeto Statement, abortando la sentencia SQL correspondiente.

void close() Cierra el objeto Statement liberando todos los recursos asociados de forma inmediata.

boolean execute(String sql)Ejecuta la sentencia SQL que se pasa por parmetro

ResultSet executeQuery(String sql)Ejecuta una sentencia SQL que devuelve un conjunto de resultados, representando por el objeto ResultSet.

int executeUpdate(String sql)Ejecuta la sentencia SQL que se pasa por parmetro y debe ser del tipo INSERT, UPDATE o DELETE

Connection getConnection()Devuelve el objeto Connection a partir del que se ha creado el objeto Statement

Creando un objeto Statement

Una vez que se ha establecido una conexin a una base de datos determinada, esta conexin se puede utilizar para enviar sentencias SQL a la base de datos. Un objeto Statement se crea con el mtodo createStatement() de la clase Connection, como se puede observar en el fragmento de cdigo que se muestra a continuacin:

Connection cn=DriverManager.getConnection(url,pepe,xxx);Statement st=cn.createStatement();

No olvidemos que si se trata de un comando Select que se desea ejecutar, invocaremos al mtodo executeQuery. Ejemplo: Connection cn=DriverManager.getConnection(url,pepe,xxx);Statement st=cn.createStatement();rs=st.executeQuery(Select * from clientes);

Si se trata de los comandos insert, update, delete y otros que modifican los datos de una tabla, utilizaremos el mtodo executeUpdate. Ejemplo:Connection cn=DriverManager.getConnection(url,pepe,xxx);Statement st=cn.createStatement();st.executeQuery(insert into Clientes values (001,Garcia Daz,Carla);

4. Manipulando Resultados

LA INTERFAZ RESULTSET

Es necesario usar un objeto que almacena todos los datos del resultado de una consulta, este objeto se llama ResultSet.

JDBC devuelve los resultados en un objeto ResultSet, por eso necesitamos declarar un ejemplar de la clase ResultSet para contener los resultados. el siguiente cdigo presenta el objeto ResultSet: rs y le asigna el resultado de una consulta anterior.

ResultSet rs=st.executeQuery(Select codcli,apecli,nomcli from Clientes);

El ResultSet es una estructura similar a la tabla de datos con la diferencia que nos es fsica, sino de tipo virtual, se crear en la memoria del Servidor y desde all se tomarn los datos para mostrarlos posteriormente en el cliente.

METODOS DEL RESULTSET

Nombre del MtodoDescripcin

previous()Enva el puntero a la fila anterior del objeto ResultSet. (Devuelve true si encuentra la fila anterior)

next()Enva el puntero a la fila siguiente del objeto ResultSet. (Devuelve true si encuentra la fila siguiente)

first()Enva el puntero a la primera fila del objeto ResultSet. (Devuelve true si se encuentra primera fila)

last()Enva el puntero a la ltima fila del objeto ResultSet. (Devuelve true si se encuentra ltima fila)

isFirst()Devuelve verdadero, si el puntero se encuentra en la primera fila

getString()Captura un dato de tipo String del esquema de datos

getInt()Captura un dato de tipo int del esquema de datos

getDate()Captura un dato de tipo Date del esquema de datos

getBoolean()Captura un dato de tipo boolean del esquema de datos

getDouble()Captura un dato de tipo double del esquema de datos

getLong()Captura un dato de tipo long del esquema de datos

EL MTODO NEXT

El mtodo next mueve al puntero o cursor a la siguiente fila y hace que esa fila (llamada fila actual) sea con la que podamos operar. Como el cursor inicialmente se posiciona justo encima de la primera fila de un objeto ResultSet, primero debemos llamar al mtodo next para mover el cursor a la primera fila y convertirla en la fila actual. Sucesivas invocaciones del mtodo next movern el cursor de lnea en lnea hacia adelante. Existen otros mtodos con los cuales podemos mover el puntero de la tabla o consultar sobre la posicin actual del puntero (En la tabla anterior, aparece la lista de mtodos que mueven el puntero de la tabla).

CONSEGUIR LOS DATOS DEL RESULTSET

Mtodo getXXX(XXX representa al tipo de dato, ejemplo: getDouble(), getString(), getLong(), etc)Los mtodos getXXX del tipo apropiado se utilizan para recuperar el valor de cada columna. Por ejemplo:

rs.getString(1);//Recupera el dato de la primera columna de la fila actualrs.getString(CODCLI); //Recupera el dato de la campo CODCLI de la fila actual

Nota: - La primera columna del ResultSet corresponde al nmero 1- Podemos referirnos a un dato del ResultSet mediante su nmero o nombre de columna.

Para conseguir otros tipos de datos contamos con los siguientes mtodos:getBytegetShortgetIntgetLonggetFloatgetDoublegetBigDecimalgetBooleangetStringgetBytesgetDategetTime

El ResultSet generado tiene la siguiente estructura:rs(5)rs(4)rs(3)rs(2)rs(1)

CodCliApeCliNomCliDirCliDisCli

0001Vargas MachucaLus AlexAv. Tupac Amaru 1254Comas

0002Garca LpezJorge AntonioJr. Amazonas 258Lima

0003Snchez RojasRandyAv. Jos Pardo 365Lince

0004Salinas MontalvoCarlaJr. Bolvar 2245Brea

0006Ore PalominoJulio CesarBarrancoSan Pedro

0007MontalvoLusSan Martn de PorresAv. Per Cdra 28

0008Villanueva FredLos OlivosAv. Palmeras

0009Palma LpezElianSan JuanAv. Las Flores Parad

0010Lozano AguirreVctorComasTupac Amaru Km. 16

5. Conexin con mltiples orgenes de Base de Datos

Las conexiones JDBC, tal como estudiamos en la semana anterior, nos permiten conectarnos con diferentes orgenes de datos, lo nico que tenemos que hacer es: Utilizar el driver provisto por el fabricante de la base de datos, la cual implementa la funcionalidad del JDBC para dicho gestor de Base de Datos. Lo nico que variar en el cdigo fuente es la forma de conexin, mientras que todo lo dems se mantendr igual. Veamos algunos ejemplos:

a. Conexin con una base de datos mysql. Nombre de la base de datos: Comercial; nombre de la tabla: Clientes

Previamente se requiere que el driver de mysql se inserte en el directorio de librerias externas de Java, situado en la siguiente ruta:

C:\Archivos de programa\Java\jdk1.6.0\jre\lib\ext

Nota: El driver de mysql, se puede descargar de la pgina de mysql en Internet (link: Download). El archivo a descargar debe ser un archivo de extensin JAR. Para nuestro caso, este archivo se llama: mysql-connector-java-5.0.8-bin.jar (Este nombre puede cambiar de acuerdo al nombre de la versin)

Cdigo fuente de la conexin JDBC con una base de Datos con MySQL

ACTIVIDADES

1. Busque y descargue el driver JDBC para Microsoft SQLServer 2000 o superior. Luego haga la conexin JDBC con una base de Datos de SQLServer. Haga un informe escrito de los pasos seguidos en el procedimiento. Incluya en su informe el cdigo fuente de su programa y la ejecucin del mismo.

GLOSARIO

PUNTERO: Marca que apunta al registro activo de una tabla. CAMPO: Referido a la columna de una tabla. REGISTRO: Referido a la fila de una tabla. Try ... catch : Estructura que controla la ocurrencia de un error, al producirse un error atrapa el objeto Exception relacionado al error y ejecuta la seccin catch. (Ver Lectura Anexa a esta unidad) Exception: Objeto que se genera al producirse un error, existen diversos tipos de Exception, de acuerdo al error producido. (Ver Lectura Anexa a esta unidad)

PROFESOR: Ricardo Coello Palomino 13