1 / 26

JDBC

JDBC. INTRODUCCION.

tara
Télécharger la présentation

JDBC

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. JDBC

  2. INTRODUCCION Este trabajo ilustra los elementos esenciales del JDBC (Java DatabaseConnectivity) API (ApplicationProgram Interface). Aquí, se aprenderá a usar el API de JDBC básico para crear las tablas, insertar valores, consultar tablas, recuperar resultados, actualizar tablas, crear declaraciones preparadas, realizar transacciones y capturar excepciones y errores.

  3. Características • JDBC es una biblioteca de clases e interfaces que permite la conexión con base de datos utilizando Java. • La biblioteca JDBC dispone de una interfaz para ejecutar instrucciones SQL que ofrece una funcionalidad básica para el acceso a datos. las clases e interfaces que componen el API de JDBC son conceptos comunes de acceso a base de datos para todas las bases de datos. • JDBC se diseño como una interfaz de programación de aplicaciones (API) orientado a objetos para acceder (consultas) a bases de datos y es un estándar. • El API JDBC se diseño como una interfaz para ejecutar consultas SQL y admite todos los dialectos de SQL.

  4. Conexión a la Base de Datos

  5. Mecanismo JDBC El funcionamiento práctico de JDBC obliga a conocer los siguientes 5 procedimientos, a saber: • Establecer conexión. • Crear sentencia. • Ejecutar sentencia. • Procesar resultados. • Cerrar.

  6. 1.- Establecer la conexión Tiene dos operaciones básicas. • DriverManager • Connection

  7. a.- DriverManager La clase DriverManager es la capa gestora de JDBC, trabajando entre el usuario y el controlador (driver). Se encarga de seguir el rastro de los controladores que están disponibles y establecer la conexión entre la base de datos y el controlador apropiado.

  8. Para trabajar con el Puente JDBC-ODBC: try {Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);} catch (ClassNotFoundExceptioncnfe) {System.err.println(“No ha podido encontrarse el driver de ODBC.”);}

  9. Para trabajar con MySQL: try {Class.forName(“com.mysql.jdbc.Driver”);} catch (ClassNotFoundExceptioncnfe) {System.err.println(“No ha podido encontrarse el driver de MySQL”);}

  10. Para trabajar con postgreSQL: try {Class.forName(“org.postgresql.Driver”);} catch (ClassNotFoundExceptioncnfe) {System.err.println(“No ha podido encontrarse el driver de postgreSQL”);}

  11. Para trabajar con Oracle: try {Class.forName(“oracle.jdbc.driver.OracleDriver”);} catch (ClassNotFoundExceptioncnfe) {System.err.println(“No ha podido encontrarse el driver de Oracle”);}

  12. b.- Connection Un objeto Connection representa una conexión a una base de datos. Una sesión con una conexión incluye las sentencias SQL que son ejecutadas y los resultados que son devueltos a través de dicha conexión. Una misma aplicación puede tener una o más conexiones con una sola base de datos o puede tener conexiones con varias bases de datos diferentes. La forma estándar de establecer una conexión con una base de datos es llamando al método DriverManager.getConnection. Este método toma como parámetro una cadena de caracteres que contiene una URL. La clase DriverManage trata de localizar el driver que pueda conectar con la base de datos representada por esa URL.

  13. Para trabajar con el Puente JDBC-ODBC con MsAccess (Windows XP): importjava.sql.*; publicstaticvoidconexion ( ) throwsException { try { // Carga el driver Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); // Define la cadena de conexión StringsourceURL = "jdbc:odbc:DSNSistema"; // Crea el objeto connection a través de DriverManager Connection con = DriverManager.getConnection(sourceURL); System.out.println("La conexion establecida es: "+ con); } catch(ClassNotFoundExceptioncnfe) { System.err.println(cnfe); } catch(SQLExceptionsqle) { System.err.println(sqle); }; };

  14. Para trabajar con MySQL. importjava.sql.*; publicstaticvoidconexion ( ) throwsException { try { // Carga el driver Class.forName("com.mysql.jdbc.Driver”); // Define la cadena de conexión StringsourceURL = "jdbc:mysql://localhost/bd_pruebas”, usuario, password"; // Crea el objeto connection a través de DriverManager Connection con = DriverManager.getConnection(sourceURL); System.out.println("La conexion establecida es: "+ con); } catch(ClassNotFoundExceptioncnfe) { System.err.println(cnfe); } catch(SQLExceptionsqle) { System.err.println(sqle); }; };

  15. Para trabajar con postgreSQL: importjava.sql.*; publicstaticvoidconexion ( ) throwsException { try { // Carga el driver Class.forName(“org.postgresql.Driver”); // Define la cadena de conexión Stringdatabase = “Bd”;Stringusername = “admin”;Stringpassword = “admin”; StringsourceURL = "jdbc:postgresql:”+database, username, password"; // Crea el objeto connection a través de DriverManager Connection con = DriverManager.getConnection(sourceURL); System.out.println("La conexion establecida es: "+ con); } catch(ClassNotFoundExceptioncnfe) { System.err.println(cnfe); } catch(SQLExceptionsqle) { System.err.println(sqle); }; };

  16. Para trabajar con Oracle XE (version 10g). importjava.sql.*; publicstaticvoidconexion ( ) throwsException { try { // Carga el driver Class.forName("oracle.jdbc.driver.OracleDriver"); // Define la cadena de conexión StringsourceURL =“jdbc:oracle:thin:@localhost:1521:orcl”, “scott”, “tiger”; // Crea el objeto connection a través de DriverManager Connection con = DriverManager.getConnection(sourceURL); System.out.println("La conexion establecida es: "+ con); } catch(ClassNotFoundExceptioncnfe) { System.err.println(cnfe); } catch(SQLExceptionsqle) { System.err.println(sqle); }; };

  17. 2.- Crear sentencia. Statement Un objeto Statement se usa para enviar sentencias SQL a una base de datos. Statementsenten = con.createStatement();

  18. En realidad el método createStatement debe llevar dos parámetros enteros que especifican el comportamiento del objeto ResultSet u hoja de datos public Statement createStatement(intresultSetType, intresultSetConcurrency) throws SQLException

  19. PreparedStatement Un objeto PreparedStatement se usa para sentencias SQL que toman uno o más parámetros como argumentos de entrada (parámetros IN). PreparedStatement tiene un grupo de métodos que fijan los valores de los parámetros IN, los cuales son enviados a la base de datos cuando se procesa la sentencia SQL. PreparedStatementupdateSales = con.prepareStatement ( “UPDATE productos SET ventas = ? WHERE COD = ? ” );

  20. 3.-Ejecutar sentencia. La sentencia SQL se ejecuta a través de los métodos executeQuery o executeUpdate dependiendo de que no exista o exista modificación de los datos respectivamente. • Consulta – executeQuery() Es una operación SELECT que devuelve el resultado de una consulta encapsulado en un objeto de tipo ResultSet • Actualización – executeUpdate() Es una operación INSERT, UPDATE o DELETE que realiza una modificación sobre la base de datos

  21. ResultSetresul = senten.executeQuery ( “ SELECT a, b, c FROM Table2″); Ó Intfilas_afectadas = senten.executeUpdate(“UPDATE personas set nombre=’Marina’ where id=4″);

  22. 4.-Procesar resultados. ResultSet Un ResultSet contiene todos los registros (filas) que satisfacen las condiciones impuestas en una sentencia SQL y proporciona acceso a los datos en dichos registros. El método ResultSet.next() se usa para moverse al siguiente registro del ResultSet, haciendo el siguiente registro el registro actual.

  23. 5.-Cerrar. Es necesario cerrar adecuadamente la sentencia el ResultSet y la conexión. • senten.close(); • resul.close(); • con.close();

  24. Conviene recordar: El mecanismo de funcionamiento básico JDBC, • Establecer conexión: Class.forName(“…”)  y DriverManager.getConnection • Crear sentencia: Statementsenten = connexion.createStatement(); • Ejecutar sentencia: executeUpdate o executeQuery • Procesar resultados: while, resul.first(), resul.last(), resul.beforeFirst(), resul.afterLast(), resul.absolute (intnum), resul.next(), resul.previous, resul.getRow(). • Cerrar: sentencia.close(), resultados.close(), conexion.close();

  25. FINDE LA PRESENTACION“A LEER EN CANTIDADES INSDUSTRIALES”

More Related