Interface Java – Oracle : JDBC. I-2 JDBC (Java DataBase Connectivity) : interface API (Application Programming Interface) qui permet d’exécuter des ordres.

Slides:



Advertisements
Présentations similaires
Réaliser en Java un programme client d’une Base de Données
Advertisements

Créer une base de données MySQL Et création de tables, enregistrements, interaction avec PHP.
La classe String Attention ce n’est pas un type de base. Il s'agit d'une classe défini dans l’API Java (Dans le package java.lang) String s="aaa"; // s.
(Classes prédéfinies – API Java)
Plan du cours La sérialisation: – comment stocker et restaurer les Objets? Les interfaces graphiques et la programmation évènementielle. –Comment concevoir.
51 Les technologies XML Cours 6 : XML et les architectures N-tiers – Tier Métier Janvier Version 1.0 -
MySQL et PHP.
Les Bases de données et le Web
Stéphane Frenot - Département Télécommunication - SID - II - Jdbc 280 JDBC Java Databases Connectivity.
PHP mySQL Extension php_mysql. Connexion à une base de données Établir une connexion mysql_connect(string server, string username, string password) –permet.
UV JDBC Module Java Expert
Programmation dapplications Bases de données avec Java INT.
Connexion base de données
Année universitaire Système dinformation Le SQL (Structured Query Language) langage dinterrogation dune base de données.
Faculté I&C, Claude Petitpierre, André Maurer Bases de données SQL (Structured Query Language)
Principes de programmation (suite)
Introduction à la programmation (420-PK2-SL) cours 12 Gestion des applications Technologie de linformation (LEA.BW)
Faculté I&C, Claude Petitpierre, André Maurer Bases de données SQL (Structured Query Language)
L’utilisation des bases de données
Les méthodes en java Une méthode est un regroupement d’instructions ayant pour but de faire un traitement bien précis. Une méthode pour être utilisée.
JDBC Java Data Base Connectivity. Java DataBase Connectivity (JDBC) Cette API est développée par Sun en collaboration avec les grands éditeurs de SGBD.
Gestion des systèmes d’information
1 Développement des Applications des Bases de Données Chapitre 6.
Connexion en mode application. Bases de données - Yann Loyer2 Connexion en mode application Pour tout type dutilisateurs : –passif, actif, gérant Permettre.
T ECHNOLOGIES O RACLE Manipulation des données © sebvita.com.
JDBC ou comment manipuler une base de données en Java ?
L’utilisation des bases de données
1 Développement des Applications des Bases de Données Chapitre 6.
1 CSI 2532 Lab5 Installation de JDBC Février 13, 2012.
IFT 6800 Atelier en Technologies d’information
COURS DE PROGRAMMATION ORIENTEE OBJET :
COURS DE PROGRAMMATION ORIENTEE OBJET :
Christine Bonnet SOURCES : « Samples » dOracle, « Oracle 8 » R. Chapuis PRO*C – C ++
Procédures Stockées Schedule: Timing Topic 60 minutes Lecture
PHP & My SQL.
Juin 2006~ Brigitte Groléas ~ 1 J530 (JBD) Java : Base de Données.
1 Fichers Binaires, Accès Direct et Objets. 2 Données binaires. Il s'agit ici de lire et écrire des données binaires par opposition à du texte. Pour ce.
Cours n°4M2. ESCE (S. Sidhom) Séminaire ( 6-12 Février 2007 ) Promo. M2 ESCE-Tunis 2006/07 Conception d’un système d'information sur Internet Architecture.
JDBC L'API JDBC est utilisée pour utilisée pour intéragir avec une base de données.
Masters IIGLI et ILGII – Intranet internet extranet – – Claude Montacié 1 Cours n° 10 Accès distant aux bases de données.
 Requêtes MySQL en PHP Introduction
 C'est une fenêtre par laquelle les informations d'une table peuvent être visualisées et changées.  C'est une table virtuelle: ◦ elle n'existe pas ◦
Strings et Tableaux en Java
DEFINITION DES DONNEES : schéma conceptuel. Schéma conceptuel instructiondescription CREATE TABLEcréation d'une relation ALTER TABLEmodification de la.
Gérer les rôles.
Les Contraintes.
 Formulaires HTML : traiter les entrées utilisateur
Master 1 SIGLIS Intégration des données dans l’entreprise Stéphane Tallard JDBC: Java Database Connectivity Master 1 SIGLIS1JDBC.
21/04/2015© Robert Godin. Tous droits réservés.1 6Gestion des contraintes d’intégrité en SQL n Contrainte d'intégrité statique – respectée pour chacun.
Cours 4 (14 octobre) Héritage. Chapitre III Héritage.
Quinio1 Bases de données : modèlisation et SGBD Séance 3 B Quinio.
Introduction  Langage propre à Oracle basé sur ADA  Offre une extension procédurale à SQL  PL/SQL permet d’utiliser un sous-ensemble du langage SQL.
Initiation au web dynamique Licence Professionnelle.
Création et Gestion de Tables
Cours n°4M1.ist-ie (S. Sidhom) UE 203 Promo. M1 IST-IE 2006/07 Conception d’un système d'information sur Internet Architecture trois-tiers : technologies.
JDBC - p. 1 JDBC. JDBC - p. 2 Objectifs Fournir un accès homogène aux SGBDR Abstraction des SGBDR cibles Requêtes SQL Simple à mettre en oeuvre Core API.
Les vues Une vue: c’est une relation virtuelle. Définie par:
02/06/2015© Robert Godin. Tous droits réservés.1 5 Interface entre SQL et un programme n SQL incomplet n Défaut d'impédance (impedance mismatch) – modèle.
JDBC Présenter par: Mouctar Souleymane Bah Enseignent: Dr Amer Draâ
JDBC (Complément de cours) IFT 3030
Le langage SQL.
Séance /10/2004 SGBD - Approches & Principes.
JAVA Les Entrées-sorties
Générateur d’applications WEB de gestion de données Génération de la base de données.
Cours n°2 Implémentation et exploitation
Les vues, indexes, séquences.  Qu’est ce qu’une vue 1. Une vue est une vision partielle ou particulière des données d'une ou plusieurs tables de la base.
Le Langage de Manipulation de Données LMD Module 6.
JDBC - Y. Bekkers1 Java et les SGBDR Librairies JDBC Yves Bekkers.
1 Les bases de données Séance 5 -- Le Langage de Définition de Données ou la manœuvre de la structure de la base -- Le Langage de Manœuvre de Données.
Transcription de la présentation:

Interface Java – Oracle : JDBC

I-2 JDBC (Java DataBase Connectivity) : interface API (Application Programming Interface) qui permet d’exécuter des ordres SQL dans un programme écrit en Java. Le programme est assimilé à un utilisateur Le programme est assimilé à un utilisateur virtuel qui se connecte, émet des requêtes virtuel qui se connecte, émet des requêtes SQL, récupère les résultats SQL, récupère les résultats avant de se déconnecter. avant de se déconnecter. JDBC (Java DataBase Connectivity) : interface API (Application Programming Interface) qui permet d’exécuter des ordres SQL dans un programme écrit en Java. Le programme est assimilé à un utilisateur Le programme est assimilé à un utilisateur virtuel qui se connecte, émet des requêtes virtuel qui se connecte, émet des requêtes SQL, récupère les résultats SQL, récupère les résultats avant de se déconnecter. avant de se déconnecter.

I-3 CLASSES À IMPORTER Package java.sql Package java.sql import java.sql.*; Package java.sql Package java.sql import java.sql.*;

I-4 CONNEXION À ORACLE  par l’intermédiaire de JDBC en utilisant une URL (Universal Resource Locator) Exemple : Exemple :

I-5 ÉTABLISSEMENT D’UNE CONNEXION 1. Déclaration et chargement du driver : Exemple : DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver()); DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver()); 1. Déclaration et chargement du driver : Exemple : DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver()); DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver()); public static void registerDriver(Driver driver) throws SQLException 1ère méthode de la classe DriverManager

I-6 ÉTABLISSEMENT D’UNE CONNEXION (SUITE) 2. Connexion à une base locale en utilisant l’URL, le nom de l’utilisateur, son mot de passe. Exemple : Connection conn = DriverManager.getConnection "nom_utilisateur","######"); "nom_utilisateur","######"); if (conn != null) System.out.println("Connexion etablie"); if (conn != null) System.out.println("Connexion etablie"); 2. Connexion à une base locale en utilisant l’URL, le nom de l’utilisateur, son mot de passe. Exemple : Connection conn = DriverManager.getConnection "nom_utilisateur","######"); "nom_utilisateur","######"); if (conn != null) System.out.println("Connexion etablie"); if (conn != null) System.out.println("Connexion etablie"); public static Connection getConnection(String url, String user, String password) throws SQLException 2ème méthode de la classe DriverManager

I-7 3.Accès à la base : requêtes SQL …. 4.Fermeture de la connexion : conn.close() 3.Accès à la base : requêtes SQL …. 4.Fermeture de la connexion : conn.close()

I-8 ACCÈS À LA BASE EN CONSULTATION Création d'une référence sur un objet de type Statement Création d'une référence sur un objet de type Statement pour mémoriser l’ordre SQL select à envoyer au SGBD. pour mémoriser l’ordre SQL select à envoyer au SGBD.  Méthode public Statement createStatement() Création d'une référence sur un objet de type ResultSet Création d'une référence sur un objet de type ResultSet qui recevra le résultat de l’exécution de la requête.  Méthode public ResultSet executeQuery(String sql) Création d'une référence sur un objet de type Statement Création d'une référence sur un objet de type Statement pour mémoriser l’ordre SQL select à envoyer au SGBD. pour mémoriser l’ordre SQL select à envoyer au SGBD.  Méthode public Statement createStatement() Création d'une référence sur un objet de type ResultSet Création d'une référence sur un objet de type ResultSet qui recevra le résultat de l’exécution de la requête.  Méthode public ResultSet executeQuery(String sql) Statement requete = conn.createStatement(); conn.createStatement(); Statement requete = conn.createStatement(); conn.createStatement(); ResultSet ensresul = requete.executeQuery("requête SQL select …");

I-9 EXPLOITATION DES RÉSULTATS  Méthode public boolean next() while ( ensresul.next() ) { …… …… String nom = ensresul.getString(1); String nom = ensresul.getString(1); …}….requete.close();ensresul.close();conn.close();  Méthode public boolean next() while ( ensresul.next() ) { …… …… String nom = ensresul.getString(1); String nom = ensresul.getString(1); …}….requete.close();ensresul.close();conn.close(); public String getString(int columnIndex)

I-10 EXEMPLE import java.sql.*; import java.lang.Class.*; class JdbcTest { public static void main ( String [] args ) throws SQLException public static void main ( String [] args ) throws SQLException { // Chargement du driver // Chargement du driver DriverManager.registerDriver (new oracle.jdbc.driver.OracleDriver()); DriverManager.registerDriver (new oracle.jdbc.driver.OracleDriver()); // Connexion à une base locale // Connexion à une base locale Connection conn = Connection conn = oracle.univ-lyon1.fr:1521:orcl","nom-utilisateur", "########"); oracle.univ-lyon1.fr:1521:orcl","nom-utilisateur", "########"); import java.sql.*; import java.lang.Class.*; class JdbcTest { public static void main ( String [] args ) throws SQLException public static void main ( String [] args ) throws SQLException { // Chargement du driver // Chargement du driver DriverManager.registerDriver (new oracle.jdbc.driver.OracleDriver()); DriverManager.registerDriver (new oracle.jdbc.driver.OracleDriver()); // Connexion à une base locale // Connexion à une base locale Connection conn = Connection conn = oracle.univ-lyon1.fr:1521:orcl","nom-utilisateur", "########"); oracle.univ-lyon1.fr:1521:orcl","nom-utilisateur", "########");

I-11 // Création de ref sur les objets requete et ensresul Statement requete = conn.createStatement( ); Statement requete = conn.createStatement( ); ResultSet ensresul = requete.executeQuery( ResultSet ensresul = requete.executeQuery( "selectename from emp");//à écrire sur une ligne "selectename from emp");//à écrire sur une ligne // Affichage des noms des employés while ( ensresul.next()) while ( ensresul.next()) System.out.println( ensresul.getString(1)); System.out.println( ensresul.getString(1)); // Déconnexion requete.close(); requete.close(); ensresul.close(); ensresul.close(); conn.close(); conn.close(); }} // Création de ref sur les objets requete et ensresul Statement requete = conn.createStatement( ); Statement requete = conn.createStatement( ); ResultSet ensresul = requete.executeQuery( ResultSet ensresul = requete.executeQuery( "selectename from emp");//à écrire sur une ligne "selectename from emp");//à écrire sur une ligne // Affichage des noms des employés while ( ensresul.next()) while ( ensresul.next()) System.out.println( ensresul.getString(1)); System.out.println( ensresul.getString(1)); // Déconnexion requete.close(); requete.close(); ensresul.close(); ensresul.close(); conn.close(); conn.close(); }} public String getString(int columnIndex)

I-12 ACCÈS POUR UN ORDRE DDL OU UN ORDRE DML  Statement requete = conn.createStatement();  Méthode public Statement createStatement() Statement requete = conn.createStatement();  Méthode public int executeUpdate(String sql) Valeur retournée : 0 pour un ordre DDL create (ou nombre de tuples créés), 0 pour drop table, le nombre de lignes traitées pour un ordre DML (insert, update, delete).  Statement requete = conn.createStatement();  Méthode public Statement createStatement() Statement requete = conn.createStatement();  Méthode public int executeUpdate(String sql) Valeur retournée : 0 pour un ordre DDL create (ou nombre de tuples créés), 0 pour drop table, le nombre de lignes traitées pour un ordre DML (insert, update, delete). int nomVariableResultat = requete.executeUpdate("requête SQL …"); Statement requete = nomConnexion.createStatement(); nomConnexion.createStatement(); Statement requete = nomConnexion.createStatement(); nomConnexion.createStatement();

I-13 EXEMPLE import java.sql.*; import java.lang.Class.*; public class Tp2 { public static void main(String[] args) throws SQLException { DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver()); DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver()); Connection conn = oracle.univ-lyon1.fr:1521:orcl","nom-utilisateur","#######"); Connection conn = oracle.univ-lyon1.fr:1521:orcl","nom-utilisateur","#######"); Statement requete1 = conn.createStatement(); Statement requete1 = conn.createStatement(); int r1 = requete1.executeUpdate("drop table emp"); int r1 = requete1.executeUpdate("drop table emp"); System.out.println("suppression de la table;statut : "+r1); System.out.println("suppression de la table;statut : "+r1); Statement requete2 = conn.createStatement(); Statement requete2 = conn.createStatement(); int r2 = requete2.executeUpdate( int r2 = requete2.executeUpdate( "create table emp as select * from scott.emp"); "create table emp as select * from scott.emp"); System.out.println("creation de la table;statut : " +r2); System.out.println("creation de la table;statut : " +r2); import java.sql.*; import java.lang.Class.*; public class Tp2 { public static void main(String[] args) throws SQLException { DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver()); DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver()); Connection conn = oracle.univ-lyon1.fr:1521:orcl","nom-utilisateur","#######"); Connection conn = oracle.univ-lyon1.fr:1521:orcl","nom-utilisateur","#######"); Statement requete1 = conn.createStatement(); Statement requete1 = conn.createStatement(); int r1 = requete1.executeUpdate("drop table emp"); int r1 = requete1.executeUpdate("drop table emp"); System.out.println("suppression de la table;statut : "+r1); System.out.println("suppression de la table;statut : "+r1); Statement requete2 = conn.createStatement(); Statement requete2 = conn.createStatement(); int r2 = requete2.executeUpdate( int r2 = requete2.executeUpdate( "create table emp as select * from scott.emp"); "create table emp as select * from scott.emp"); System.out.println("creation de la table;statut : " +r2); System.out.println("creation de la table;statut : " +r2);

I-14 // Pour calculer la moyenne des salaires des employés // ayant le même travail que l'employé n° 7369 // Pour calculer la moyenne des salaires des employés // ayant le même travail que l'employé n° 7369 Statement requete3 = conn.createStatement(); Statement requete3 = conn.createStatement(); ResultSet ensresul = requete3.executeQuery( ResultSet ensresul = requete3.executeQuery( "select avg(sal)from emp where job=(select job from emp where empno=7369)"); while (ensresul.next()) while (ensresul.next()) System.out.println(ensresul.getFloat(1)); System.out.println(ensresul.getFloat(1)); //Pour mettre à jour le salaire de l’employé 7369 : // (sal < moy_sal_m_job ? moy_sal_m_job : sal * 1.1) //Pour mettre à jour le salaire de l’employé 7369 : // (sal < moy_sal_m_job ? moy_sal_m_job : sal * 1.1) Statement requete4 = conn.createStatement(); Statement requete4 = conn.createStatement(); int r4 = requete4.executeUpdate( int r4 = requete4.executeUpdate( "update emp e set sal = (select decode(least(e.sal,avg(sal)),e.sal,avg(sal),e.sal*1. 1) from emp where job=e.job) where empno=7369"); System.out.println("nombre de lignes mises a jour:"+ r4); System.out.println("nombre de lignes mises a jour:"+ r4); // Pour calculer la moyenne des salaires des employés // ayant le même travail que l'employé n° 7369 // Pour calculer la moyenne des salaires des employés // ayant le même travail que l'employé n° 7369 Statement requete3 = conn.createStatement(); Statement requete3 = conn.createStatement(); ResultSet ensresul = requete3.executeQuery( ResultSet ensresul = requete3.executeQuery( "select avg(sal)from emp where job=(select job from emp where empno=7369)"); while (ensresul.next()) while (ensresul.next()) System.out.println(ensresul.getFloat(1)); System.out.println(ensresul.getFloat(1)); //Pour mettre à jour le salaire de l’employé 7369 : // (sal < moy_sal_m_job ? moy_sal_m_job : sal * 1.1) //Pour mettre à jour le salaire de l’employé 7369 : // (sal < moy_sal_m_job ? moy_sal_m_job : sal * 1.1) Statement requete4 = conn.createStatement(); Statement requete4 = conn.createStatement(); int r4 = requete4.executeUpdate( int r4 = requete4.executeUpdate( "update emp e set sal = (select decode(least(e.sal,avg(sal)),e.sal,avg(sal),e.sal*1. 1) from emp where job=e.job) where empno=7369"); System.out.println("nombre de lignes mises a jour:"+ r4); System.out.println("nombre de lignes mises a jour:"+ r4);

I-15 // déconnexion // déconnexion requete1.close(); requete1.close(); requete2.close(); requete2.close(); requete3.close(); requete3.close(); requete4.close(); requete4.close(); ensresul.close(); ensresul.close(); conn.close(); conn.close(); } } // fin classe Tp2 // déconnexion // déconnexion requete1.close(); requete1.close(); requete2.close(); requete2.close(); requete3.close(); requete3.close(); requete4.close(); requete4.close(); ensresul.close(); ensresul.close(); conn.close(); conn.close(); } } // fin classe Tp2

I-16 Exécution : suppression de la table;statut : 0 creation de la table;statut : nombre de lignes mises a jour : 1 Appuyez sur une touche pour continuer... Exécution : suppression de la table;statut : 0 creation de la table;statut : nombre de lignes mises a jour : 1 Appuyez sur une touche pour continuer...

I-17 ORDRES SQL DYNAMIQUES Requête paramétrée :  Utilisation de la méthode  public PreparedStatement prepareStatement(  String sql)  et  Du caractère "?" pour représenter une valeur d’une variable Requête paramétrée :  Utilisation de la méthode  public PreparedStatement prepareStatement(  String sql)  et  Du caractère "?" pour représenter une valeur d’une variable PreparedStatement requetevar = conn.prepareStatement("ordre sql contenant des ? ");

I-18 ORDRES SQL DYNAMIQUES (suite) Renseignement des variables :  Méthode set XXX, avec XXX type de la variable ( String, Int, Float, Double, …) Exemple : Exemple : Renseignement des variables :  Méthode set XXX, avec XXX type de la variable ( String, Int, Float, Double, …) Exemple : Exemple : requetevar.setXXX(rang, valeur); public void setFloat(int parameterIndex, float x) (rang : position du paramètre dans l’ordre SQL).

I-19 EXEMPLE import java.sql.*; import java.lang.Class.*; class OrdreDyna { public static void main (String args []) throws SQLException public static void main (String args []) throws SQLException { DriverManager.registerDriver (new oracle.jdbc.driver.OracleDriver()); DriverManager.registerDriver (new oracle.jdbc.driver.OracleDriver()); // Connexion à une base locale // Connexion à une base locale Connection conn = DriverManager.getConnection( Connection conn = DriverManager.getConnection( lyon1.fr:1521:orcl", lyon1.fr:1521:orcl", "nom-utilisateur","######"); "nom-utilisateur","######"); // création d'une table // création d'une table Statement reqcr = conn.createStatement(); Statement reqcr = conn.createStatement(); int r = reqcr.executeUpdate("create table adherent(numad number(4) primary key, nom varchar2(14))"); int r = reqcr.executeUpdate("create table adherent(numad number(4) primary key, nom varchar2(14))"); System.out.println("creation de la table;statut:"+r); System.out.println("creation de la table;statut:"+r); import java.sql.*; import java.lang.Class.*; class OrdreDyna { public static void main (String args []) throws SQLException public static void main (String args []) throws SQLException { DriverManager.registerDriver (new oracle.jdbc.driver.OracleDriver()); DriverManager.registerDriver (new oracle.jdbc.driver.OracleDriver()); // Connexion à une base locale // Connexion à une base locale Connection conn = DriverManager.getConnection( Connection conn = DriverManager.getConnection( lyon1.fr:1521:orcl", lyon1.fr:1521:orcl", "nom-utilisateur","######"); "nom-utilisateur","######"); // création d'une table // création d'une table Statement reqcr = conn.createStatement(); Statement reqcr = conn.createStatement(); int r = reqcr.executeUpdate("create table adherent(numad number(4) primary key, nom varchar2(14))"); int r = reqcr.executeUpdate("create table adherent(numad number(4) primary key, nom varchar2(14))"); System.out.println("creation de la table;statut:"+r); System.out.println("creation de la table;statut:"+r);

I-20 // insertion d'une ligne( ou tuple ) PreparedStatement reqins=conn.prepareStatement( PreparedStatement reqins=conn.prepareStatement( "insert into adherent values ( ?, ?)" ); "insert into adherent values ( ?, ?)" ); // renseignement des variables String nomLu = "dupont"; //ou lecture au clavier String nomLu = "dupont"; //ou lecture au clavier reqins.setInt( 1, 123 ); reqins.setInt( 1, 123 ); reqins.setString( 2, nomLu ); reqins.setString( 2, nomLu ); // insertion de la ligne reqins.executeUpdate( ); // sans argument reqins.executeUpdate( ); // sans argument // lecture de la table pour vérification Statement reqcons = conn.createStatement(); Statement reqcons = conn.createStatement(); ResultSet ensresul = reqcons.executeQuery( ResultSet ensresul = reqcons.executeQuery( "select * from adherent"); // sur une même ligne while ( ensresul.next( ) ) while ( ensresul.next( ) ) { System.out.println( ensresul.getInt(1) ); System.out.println( ensresul.getInt(1) ); System.out.println( ensresul.getString(2) ); System.out.println( ensresul.getString(2) );} // insertion d'une ligne( ou tuple ) PreparedStatement reqins=conn.prepareStatement( PreparedStatement reqins=conn.prepareStatement( "insert into adherent values ( ?, ?)" ); "insert into adherent values ( ?, ?)" ); // renseignement des variables String nomLu = "dupont"; //ou lecture au clavier String nomLu = "dupont"; //ou lecture au clavier reqins.setInt( 1, 123 ); reqins.setInt( 1, 123 ); reqins.setString( 2, nomLu ); reqins.setString( 2, nomLu ); // insertion de la ligne reqins.executeUpdate( ); // sans argument reqins.executeUpdate( ); // sans argument // lecture de la table pour vérification Statement reqcons = conn.createStatement(); Statement reqcons = conn.createStatement(); ResultSet ensresul = reqcons.executeQuery( ResultSet ensresul = reqcons.executeQuery( "select * from adherent"); // sur une même ligne while ( ensresul.next( ) ) while ( ensresul.next( ) ) { System.out.println( ensresul.getInt(1) ); System.out.println( ensresul.getInt(1) ); System.out.println( ensresul.getString(2) ); System.out.println( ensresul.getString(2) );}

I-21 // Déconnexion // Déconnexion reqcr.close(); reqcr.close(); reqins.close(); reqins.close(); reqcons.close(); reqcons.close(); ensresul.close(); ensresul.close(); conn.close(); conn.close(); }}Exécution creation de la table;statut : 0 123dupont Appuyez sur une touche pour continuer... // Déconnexion // Déconnexion reqcr.close(); reqcr.close(); reqins.close(); reqins.close(); reqcons.close(); reqcons.close(); ensresul.close(); ensresul.close(); conn.close(); conn.close(); }}Exécution creation de la table;statut : 0 123dupont Appuyez sur une touche pour continuer...