Java et bases de données : JDBC

1 293 vues

Publié le

Publié dans : Internet
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
1 293
Sur SlideShare
0
Issues des intégrations
0
Intégrations
9
Actions
Partages
0
Téléchargements
71
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Java et bases de données : JDBC

  1. 1. Java DataBase Connectivity JDBC
  2. 2. En pratique  Chargement du pilote  Ouverture de connexion  Exécution d'une requête  Programme principal
  3. 3. Package et classes  Le paquetage java.sql regroupe les interfaces et les classes de l'API JDBC. import java.sql.DriverManager; // gestion des pilotes import java.sql.Connection; // une connexion à la BD import java.sql.Statement; // une instruction import java.sql.ResultSet; // un résultat (lignes/colonnes) import java.sql.SQLException; // une erreur
  4. 4. Les Pilotes (drivers)
  5. 5. Drivers  Type 1 JDBC-ODBC Bridge  Type 2 Native-API Partly-Java Driver  Type 3 Net Protocol All-Java Driver  Type 4 Native Protocol All-Java Driver
  6. 6. Drivers : chargement Méthode 1 : String nomDriver = "nom_du_driver"; try{ Class.forName(nomDriver); }catch(ClassNotFoundException cnfe){ System.out.println("La classe "+nomDriver+" n'a pas été trouvée"); cnfe.printStackTrace(); } Exemple : Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); //pour le pont JDBC-ODBC Class.forName("com.mysql.jdbc.Driver"); //pour MySQL et ConnectorJ Méthode 2: Driver monDriver = new com.mysql.jdbc.Driver(); DriverManager.registerDriver(monDriver);
  7. 7. Connections String url = "jdbc:<subprotocol>:<subname> " ; Connect = DriverManager.getConnection( url , SQLlogin , SQLpassword ) ; Exemples : jdbc:odbc:maBase;CacheSize=30;ExtensionCase=LOWER jdbc:mysql://localhost/maBase jdbc:sybase:Tds:localhost:5020/maBase Pour oracle on a deux mode de oci et thin : jdbc:oracle:oci:@maBase jdbc:oracle:thin:@//localhost:1521:maBase
  8. 8. Le cas Oracle
  9. 9. la Connexion (connection)
  10. 10. Les requetes  Statement //requete simple  PreparedStatement //requete preparée  CallableStatement // appel à une procedure stockée  On ne peut pas les instancier  Pour les créer il faut faire appel à la classe Connection
  11. 11. Statement
  12. 12. Statement
  13. 13. Resulset
  14. 14. Resulset navigable modifiable Statement createStatement(int typeCurseur, int modifCurseur)
  15. 15. Resulset navigation
  16. 16. Resulset modification
  17. 17. Resulset modification Connection connection = ...; Statement statement = connection.createStatement ( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE ); String sql = "SELECT * FROM Annuaire"; ResultSet resultat = statement.executeQuery(sql); // on se place sur la ligne à insérer resultat.moveToInsertRow(); //on renseigne les différents champs resultat.updateInt("id",456); resultat.updateString("nom","nouveauNom"); resultat.updateString("prenom","nouveauPrenom"); //on insère effectivement la nouvelle ligne resultat.insertRow(); // se replacer sur la ligne pointée avant l'appel à moveToInsertRow resultat.moveToCurrentRow();
  18. 18. PreparedStatement
  19. 19. CallableStatement 1- Créer le callablestatement (connection.prepareCall(String)) 2- répertorier le type des paramètres de sortie (méthode registerOutParameter(numero, type java.sql.types) 3- passer les valeurs des paramètres d’entrée (méthode setXXX( numéro, valeur)) 4- récupérer les résultats (méthode (getXXX( numéro ))
  20. 20. CallableStatement
  21. 21. Transactions
  22. 22. Transactions

×