| JDBC 
           | 
   
    | Felipe 
        FernándezYerko Muñoz
 | 
   
    | Qué es 
        JDBC? JDBC es usado para 
        enviar comandos SQL hacia una base de datos relacional, que puede ser 
        Oracle, Infomix, SyBase, etc.
 | 
   
    | Qué hace 
        JDBC?Establece una conexión con una BD
 Envía sentencias SQL
 Procesa los resultados
 Connection con = 
        DriverManager.getConnection ( "jdbc:odbc:wombat", "login", 
        "password"); Statement stmt = con.createStatement();
 ResultSet rs = stmt.executeQuery("SELECT a, b, c FROM Table1");
 while (rs.next()) { int x = rs.getInt("a"); String s = rs.getString("b"); 
        float f = rs.getFloat("c"); }
 | 
   
    | JDBC 
      es una API de bajo nivel para API´s de alto nivel Una integración 
        de SQL hacia Java, es decir que las sentencias SQL se puedan mezclar con 
        Java, por ejemplo, que una variable de Java pueda ser usada en una sentencia 
        SQL para recibir o dar valores. Un mapeo directo 
        de las tablas de la BD hacia las clases de Java, donde cala fila de la 
        tabla se convierte en una instancia de la clase, y donde cada columna 
        se corresponde a un atrubuto de esa instancia. | 
   
    | JDBC v/s ODBC 
        y otras API´sODBC no es apropiado para usar directamente con Java por que usa una interfaz 
        en C.
 Una traducción literal de la API ODBC en C, no es deseable. Por 
        ejemplo Java no tiene punteros y la ODBC hace gran uso de ellos.
 ODBC es muy difícil de aprender , hace una mezcla de acciones simples 
        y avanzadas.
 Una API como JDBC es necesario para poder desarrollar una solución 
        puramente de Java
   | 
   
    | Modelos de dos 
        capas y tres capas  | 
   
    |  |  | 
   
    | Conformación 
        de SQLEl SQL es el idioma normal por acceder las bases de datos correlativas. 
        Una dificultad es que aunque la mayoría del DBMSs (los Sistemas 
        de Dirección de Base de datos) use un formulario normal de SQL 
        para la funcionalidad básica, ellos no conforman la sintaxis de 
        SQL normal más recientemente definida para la funcionalidad más 
        avanzada. Por ejemplo no todas las BD soportar procedimientos almacenados.
 Una manera que el 
        API de JDBC trata de este problema es permitir cualquier sentencia sea 
        pasada a un driver de DBMS subyacente.Para las aplicaciones 
      complejas, JDBC trata la conformación de SQL de otra manera. Proporciona 
      la información descriptiva sobre el DBMS por medio del DatabaseMetaData 
      para que las aplicaciones puedan adaptar a los requisitos y capacidades 
      de cada DBMS.
 | 
   
    | El Armazón 
        de JDBCJavaSoft proporciona tres componentes JDBC como la parte de la JDK:
 el JDBC driver manager,
 la JDBC driver test suite
 el puente JDBC-ODBC.
 El JDBC driver manager es el espinazo de la arquitectura de JDBC. Realmente 
        es bastante pequeño y simple; su función primaria es conectar 
        las aplicaciones de Java al chófer de JDBC correcto y entonces 
        salir de la manera.
 La JDBC driver test 
        suite proporciona un poco de confianza en que drivers de JDBC ejecutarán 
        su programa. Pueden designarse sólo drivers que pasan la JDBC driver 
        test suite
 | 
   
    | El Armazón 
        de JDBCEl puente de JDBC-ODBC les permite a los drivers de ODBC ser usado como 
        drivers de JDBC. Y a largo plazo proporcionará una manera de acceder 
        alguno del DBMSs menos popular si no se crean los drivers de JDBC para 
        ellos.
  
 | 
   
    |  
Ejemplos JDBC ( Lado Cliente )
 
 Se asume que se tiene instalado una DBMS Oracle 8i (versión 8.1.6) 
      y que se puede conectar usando el driver de JDBC.
 Brevemente estos ejemplos muestran cómo conectarse a la Base de Datos 
      y usar sentencias SQL simples como "select", "insert", "update" y "delete".
 
 
 Algunos ejemplos simples:
 
 driver_ver.java Despliega la versión 
      del driver.
 driver_check.java Chequea si corren los 
      drivers correctamente.
 
 tab_sel.java Select a una tabla.
 tab_upd.java Modifica registros en una tabla.
 tab_del.java Borra registros de una tabla.
 tab_ins.java Inserta registros hacia una tabla.
 tabprep_upd.java Como usar una sentencia 
      de preparación con un "update".
 
 Otros ejemplos:
 
 call_sp.java Llamado a un procedimiento de Oracle.
 call_sf.java Llama a una función de Oracle.
 excep_1.java Manejo de excepciones (1).
 excep_2.java Manejo de excepciones (2).
 meta_data1.java Meta-datos. Cómo manejar 
      un "select *".
 meta_data2.java Más métodos 
      con meta-datos , cómo obtener los nombres de los campos.
 meta_data3.java Más métodos 
      con meta-datos (*).
 meta_data4.java Detalles sobre las palabras 
      claves no estándares de la BD.
 meta_data5.java Cómo encontrar el largo 
      máximo de un nombre de un campo.
 meta_data6.java Tipos de tablas permitidos.
 tab_preupdtran.java Cómo setear 
      una transacción.
 tab_preupdrb.java Cómo ejecutar 
      un "rollback".
 
 
 |