JDBC L'API JDBC est utilisée pour utilisée pour intéragir avec une base de données.

Slides:



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

Conception de Site Webs Interactifs Cours 10 Patrick Reuter
Algorithmes et structures de données avancées Partie Conception de Sites Web dynamiques Cours 10 Patrick Reuter.
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
Les requêtes Manière de dialoguer avec une base de donnée pour :
Stéphane Frenot - Département Télécommunication - SID - II - Jdbc 280 JDBC Java Databases Connectivity.
Design Pattern MVC En PHP5.
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
TP 3-4 BD21.
Programmation dapplications Bases de données avec Java INT.
JDBC: manipuler une base de données en Java IFT6800 – E 2007 Jian-Yun Nie.
Connexion base de données
Année universitaire Système dinformation Le SQL (Structured Query Language) langage dinterrogation dune base de données.
LMD: Langage de Manipulation de Données
Développement d’applications web
AYARI Mejdi Formation 2121 * ISD * 1 tructured uery Anguage 2006.
Faculté I&C, Claude Petitpierre, André Maurer Bases de données SQL (Structured Query Language)
L’utilisation des bases de données
Rappel sur les bases de données et le vocabulaire
BASE DE DONNEES RELATIONNELLES
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.
JDBC ou comment manipuler une base de données en Java ?
Bases de données et SGBD relationnels
Les instructions PHP pour l'accès à une base de données MySql
L’utilisation des bases de données
SQL Partie 3 : (LID : Langage d'interrogation de données)
Les concepts et les méthodes des bases de données
PROGRAMMATION INFORMATIQUE DINGÉNIERIE II PRO-1024.
Christine Bonnet SOURCES : « Samples » dOracle, « Oracle 8 » R. Chapuis PRO*C – C ++
CPI/BTS 2 Programmation Web PHP et les Bases de données Prog Web CPI/BTS2 – M. Dravet – 11/03/2004 Dernière modification: 11/03/2004.
Chapitre 5 : Le langage SQL
SQL Partie 2. SQL est un Langage de Manipulation de Données SQL est un langage de manipulation de données (LMD), cela signifie qu'il permet de sélectionner,
Juin 2006~ Brigitte Groléas ~ 1 J530 (JBD) Java : Base de Données.
JavaScript Nécessaire Web.
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.
Surveiller et résoudre le conflit de verrouillage
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
1 PHP 5 Notions fondamentales (cours #5) Formation continue – Cégep de Sainte-Foy.
 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.
SQL : Langage de Manipulation des données
 Le langage SQL Introduction SQL : Strutured Query Language, est un langage de requête, que l'on retrouve dans divers SGBDR (Access de Microsoft, MySQL,
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.
Interface Java – Oracle : JDBC. I-2 JDBC (Java DataBase Connectivity) : interface API (Application Programming Interface) qui permet d’exécuter des ordres.
06/04/06 LES BASES DE DONNEES INTRODUCTION CogniTIC – Bruxelles Formation - Cepegra.
Structured Query Language 1/34. SQL Types de données Langage de Définition de Données (LDD) Langage de Manipulation de Données (LDM) Langage de Contrôle.
Les bases de données Séance 8 Jointures.
Le Langage de Manipulation de Données LMD. 2 Les ordres SQL de manipulation INSERT –Insertion (ajout) de ligne(s) dans une table –Utiliser SQL*LOAD pour.
MANIPULATION DES DONNEES : mise à jour des n-uplets.
JDBC (Complément de cours) IFT 3030
Séance /10/2004 SGBD - Approches & Principes.
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.
CONCEPTS BD - Synthèse journée 1 :
SQL Partie 2. SQL est un langage de manipulation de données SQL est un langage de manipulation de données (LMD), cela signifie qu'il permet de sélectionner,
Modélisation et utilisation Aurélien Marion1 Aurélien Marion
De Arnault Chazareix :
JDBC - Y. Bekkers1 Java et les SGBDR Librairies JDBC Yves Bekkers.
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 4 Support de cours rédigé par Bernard COFFIN Université.
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:

JDBC L'API JDBC est utilisée pour utilisée pour intéragir avec une base de données.

JDBC Architecture des bases de données Serveur de base de données Négociation avec la base de données Ordres DML Application cliente Dans une architecture 2-tiers, les clients se connectent directement au serveur de base de données.

JDBC Architecture des bases de données Serveur de base de données Serveur d'application Ordres DML Requêtes . Négociation avec la base de données Application cliente Dans une architecture 3-tiers, les clients passe par un serveur d'application pour se connecter au serveur de base de données.

JDBC Une table contient des données groupées en ligne et en colonne. Table de base de données Une table contient des données groupées en ligne et en colonne. Certaines colonnes sont particulières : clef primaire, clef étrangère et valeurs obligatoires....

JDBC SQL-Structured Query Language Le SQL permet de créer des vues consistentes sur les données. manipuler les données : effacer, ajouter, modifier. Le SQL est un langage de manipulation des données (DML) normalisé. C'est celui qui est utilisé pour accéder aux bases MS, Oracle et Postgres.

JDBC SQL-Structured Query Language SELECT <NomDeColonne[,NomDeColonne]... ¦ *> FROM <NomDeTable> [WHERE <condition>] [ORDER BY <NomDeColonne[,NomDeColonne]...> [ASC¦DESC] ] L'instruction SELECT permet de récupérer les données d'une table en ne s'intéressant qu'à certaines colonnes. Elle permet également de définir des conditions auquelles les données seront ou non ajoutées à la vue. Elle offre également la possibilité de trier les données dans un ordre particulier. L'instruction SELECT permet de contruire des vues sur les données.

SQL-Structured Query Language JDBC JDBC JDBC SQL-Structured Query Language <NomDeTable1> INNER JOIN <NomDeTable2> ON <condition> L'instruction INNER JOIN permet de récupérer les données de plusieurs table comme s'il s'agissait d'une seule et même table . Cette instruction est utilisée en conjonction avec l'instruction SELECT. L'instruction INNER JOIN permet d'effectuer une jointure (lier le contenu) entre plusieurs tables.

SQL-Structured Query Language JDBC SQL-Structured Query Language INSERT INTO <NomDeTable> ( <NomDeColonne[,NomDeColonne]...>) VALUES ( 'valeur1'[,'valeur2'].... ) L'instruction INSERT INTO ajoute un enregistrement dans une table. Cette instruction doit spécifier quelles sont les valeurs données aux différents champs de l'enregistrement. Elle doit également spécifier les colonnes que l'on désire remplir, et celles auquelles on laisse une valeur par défaut. L'ordre et le nombre des NomDeColonne correspond à celui des valeurs. L'instruction INSERT INTO permet d'ajouter des enregistrements à une table.

SQL-Structured Query Language JDBC SQL-Structured Query Language UPDATE <NomDeTable> SET ( <NomDeColonne> = '<valeur>'[,<NomDeColonne> = '<valeur>']) WHERE <condition> L'instruction UPDATE modifie un ou plusieurs enregistrement dans une table. Cette instruction doit spécifier quelles sont les valeurs données aux différents champs de l'enregistrement, pour chaque colonne modifiée. La clause WHERE spécifie la/les condition que doivent remplir les données pour être concernée par l'update. L'instruction UPDATE permet de modifier un ou plusieurs enregistrements dans une table.

SQL-Structured Query Language JDBC SQL-Structured Query Language DELETE FROM <NomDeTable> WHERE <condition> L'instruction DELETE supprime un ou plusieurs enregistrement dans une table. La clause WHERE spécifie la/les condition que doivent remplir les données pour être concernées par la suppression. L'instruction DELETE permet de supprimer un ou plusieurs enregistrements dans une table.

JDBC Accès à une base de données en java. Pour accéder à une base de données en java, nous devons réaliser les étapes suivantes : Charger un pilote spécifique à la base de données. Obtenir une connexion avec la base de données (session). Obtenir un « Statement » qui permettra d'exécuter les requêtes SQL. Obtenir des « ResultSet » contenant les données de la table. Fermer la connexion à la base de données. L'accès à une base de données se fait toujours selon le même schéma.

JDBC Charger un pilote spécifique à la base de données et obtenir une connexion à la base de données.

JDBC Charger un pilote spécifique à la base de données et obtenir une connexion à la base de données. Pour charger un pilote spécifique à la base de données, on utilise la méthode statique de la Classe java.lang.Class : Class.forName( <NomDeLaClasseDuPilote> ); Cette méthode peut lancer l'exception ClassNotFoundException si la classe spécifiée n'est pas dans votre classpath. Pour obtenir une connexion avec la base de données , on utlise la méthode statique de la classe java.sql.DriverManager : DriverManager.getConnection( url, user, pwd ) Cette méthode prend en argument l'url de la base de données qui est de la forme jdbc: <protocole propre au driver> : <nom d'hôte> : <port> :<NomDeBD> Elle peut lancer l'exception SQLException en cas de problème. Cette procédure permet de se connecter à une base de donnée distante ou locale .

Obtenir un « Statement » JDBC Obtenir un « Statement » Il nous faut obtenir un Objet de type Statement pour envoyer nos requêtes SQL. Ces requêtes peuvent alors rertourner un ResultSet.

Obtenir un « Statement » JDBC Obtenir un « Statement » Pour obtenir un statement , il faut utiliser la méthode connection.createStatement(); Cette méthode renvoie un objet java implémentant l'interface java.sql.Statement Cet objet peut alors être utilisé pour exécuter des requêtes SQL : statement.executeQuery( <RequeteSQL>); Certaines requêtes renvoie un jeu de données : un java.sql.ResultSet. Ce ResultSet sera utilisé pour lire les données... Il nous faut obtenir un Objet de type Statement pour envoyer nos requêtes SQL. Ces requêtes peuvent alors rertourner un ResultSet.

Manipulation des ResultSets JDBC Manipulation des ResultSets Il faut placer le curseur sur le premier enregistrement. Ensuite on peut parcourir notre ensemble de données !!! Au début le curseur du ResultSet pointe sur l'enregistrement -1 !!!!

Manipulation des ResultSets JDBC Manipulation des ResultSets Ces opérations sont à risque On utilise la méthode appropriée de ResultSet pour lire la donnée de la colonne « i » Il existe de nombreuses méthodes permettant de lire tous les types de données primitifs dans la classe ResultSet.

Les méta données sont stockées dans un ResultSet. JDBC Les Meta Données Les meta données sont des données sur les données. Chaque ResultSet possède ses propres MetaDonnées. Elles sont utilisées pour obtenir les noms des colonnes dans un ResultSet ainsi que le type des données qui se trouvent dans chacune d'elles. Obtention des metaData. Utilisation des metaData. Les méta données sont stockées dans un ResultSet.

JDBC Les Meta Données les metadonnées renseignent sur le type des données dans chaque colonne. On peut également obtenir le type des données sous forme de chaîne. On utilise les métadonnées pour connaître le type des données dans chaque colonne du ResultSet.

Comment sont formées les URL JDBC ? Les URL JDBC sont définies sous forme de String selon ce schéma : String url = "jdbc:<subprotocol>:<subname>" <jdbc>: Le protocole dans une URL JDBC est toujours jdbc <subprotocol> Cela correspond au nom du driver ou au mécanisme de connexion à la base de données. <subname> Une manière d'identifier la source de données. Ce dernier élément dépend complètement du sous-protocole et du driver. Par exemple : jdbc:odbc:maBase;CacheSize=30;ExtensionCase=LOWER jdbc:mysql://localhost/maBase jdbc:oracle:oci8@:maBase jdbc:oracle:thin@://localhost:8000:maBase jdbc:sybase:Tds:localhost:5020/maBase Il est nécessaire de se documenter auprès du fournisseur du driver.