Connexion aux bases de données. Rappels API JDBC Pilotes JDBC Connexion ResultSet requêtes interprétées requêtes préparées
|
|
- Camille Lafontaine
- il y a 6 ans
- Total affichages :
Transcription
1 JDBC 1
2 Connexion aux bases de données Rappels API JDBC Pilotes JDBC Connexion ResultSet requêtes interprétées requêtes préparées 2
3 Modélisation des données Création d'un schéma entités/associations Entités : identifiables ( notion de clé) pertinente pour l'application caractérisées par des propriétés (attributs) Représentation graphique OMT, Merise, UML 3
4 Schéma relationnel schéma entités/associations schéma relationnel - tables A et B A B - la clé de A devient un attribut de B ( clé étrangère) - tables A et B A attr B - table AB pour l'association ( avec clé=(clé A,clé B) - attribut de l'association = attribut de la table AB 4
5 Types mysql : CHAR(n) INTEGER VARCHAR(n) DECIMAL(m,n) DATE TIME DATETIME TEXT Expression des contraintes Clés Mysql DEFAULT val val = valeur par défaut NOT NULL valeur obligatoire chaîne de longueur n entier chaîne de longueur <=n m= longueur partie entière, n=lg partie décimale jour, mois, an heure, minutes et secondes date et horaire texte de longueur quelconque PRIMARY KEY( num) l'attribut num est la clé primaire FOREIGN KEY(idad) REFERENCES Personne la clé étrangère idad référence la clé primaire de la table Personne 5
6 Correspondances des types de données SQL/Java Type SQL CHAR VARCHAR INTEGER TINYINT SMALLINT BIGINT BIT REAL FLOAT DOUBLE NUMERIC DECIMAL DATE TIME TIMESTAMP Type Java String int byte short long boolean float double java.math.bigdecimal java.sql.date java.sql.time java.sql.timestamp Méthode getter getstring() getint() getbyte() getshort() getlong() getboolean() getfloat() getdouble() getbigdecimal() getdate() gettime() gettimestamp() 6
7 SQL Sélection SELECT attr,... FROM table,... WHERE condition où condition est une expression sur les attributs des tables du FROM les opérateurs applicables sont opérateurs arithmétiques : +,*,-,... opérateurs relationnels : <,>,>=,...,!= opérateurs logiques : AND, NOT, OR BETWEEN, IN, LIKE caractères joker '_' remplace n'importe quel caractère '%' remplace n'importe quelle chaîne de caractères Destruction DELETE FROM table WHERE condition Modification UPDATE table SET attr1=val1,ai=vali,... WHERE condition 7
8 Introduction à JDBC Pour les applications web utilisant une ou plusieurs bases de données, les servlets et l'api JDBC offrent une solution : efficace, la connexion est maintenue durant tout le cycle de vie de la servlet et non à chaque invocation flexible, l'accès à une base de données dépend peu de son fournisseur. Il est facile de porter une application web vers une base de données d'un autre fournisseur 8
9 Principe de fonctionnement de JDBC Permet à un programme Java d'interagir localement ou à distance avec une base de données relationnelle Fonctionne selon un principe client/serveur client = le programme Java serveur = la base de données Principe le programme Java ouvre une connexion il envoie des requêtes SQL il récupère les résultats... il ferme la connexion 9
10 Architecture 3 tiers utilisateur couche présentation interface web couche métier (domaine) couche d'accès aux données BD les trois couches sont rendues indépendantes grâce à l'utilisation d'interfaces Java 10
11 API JDBC l'api JDBC se trouve dans le paquetage java.sql l'api JDBC est constituée d'un ensemble d'interfaces pour interagir avec des bases de données l'api JDBC ne fournit donc aucune implémentation des comportements spécifiés par les interfaces l'api JDBC permet d'exécuter des instructions SQL et de récupérer les résultats La version la plus récente de l'api est la version
12 Pilotes JDBC (1/2) Le pilote JDBC a pour rôle de permettre l'accès à un système de bases de données particulier. Il gère le détail des communications avec un type de SGBD A une API JDBC correspond plusieurs implémentations selon les fournisseurs (un type de driver par SGBD Oracle, Sybase, Access,...). Il en existe pour la plupart des SGBD relationnels Le pilote implémente l'interface java.sql.driver Il existe un driver générique JDBC-ODBC pour toutes les données accessibles par ODBC - SGBD : MS Access, SQL Server, Oracle, dbase,... - tableurs : Excel,... - tout autre application conforme ODBC 12
13 Pilotes JDBC (2/2) 4 catégories de pilotes JDBC : les pilotes qui connectent des programmes java à des sources de données ODBC (Open DataBase Connectivity). Le pont JDBC-ODBC de Sun (sun.jdbc.odbc.jdbcodbcdriver) est inclut dans le jdk (accès local seulement) => un driver ODBC installé sur le client. accès local uniquement. Utilisé en développement les pilotes partiellement écrits en Java qui utilisent des librairies natives (C/C++) pour accéder aux SGBD. les pilotes JDBC écrits en Java qui communiquent localement ou à distance avec le SGBD selon un protocole générique les pilotes pur Java qui utilisent un protocole spécifique au SGBD 13
14 Gestionnaire de pilotes DriverManager DriverManager est une classe, gestionnaire de tous les drivers chargés par un programme Java Chaque programme Java charge le (ou les) drivers dont il a besoin L'enregistrement des pilotes est automatique 14
15 Connexion à une base de données 1. Disposer de l'url d'un pilote pour le SGBD com:mysql:jdbc:driver Sun:jdbc:odbc:JdbcOdbcDriver 2. Charger le pilote Class.forName("com:mysql:jdbc:Driver"); // création d'une instance du pilote // enregistrement automatique auprès du // DriverManager 3. Etablir l'url (protocole) de la base String dburl="jdbc:mysql://localhost:3306/mabd"; 4. Ouvrir la connexion : le DriverManager choisit le pilote approprié à cette URL parmi l'ensemble des pilotes disponibles. Connection dbcon = DriverManager.getConnection(dbUrl,user,password); 15
16 Code de connexion : exemple (1/2) try { //Déclaration du driver : Class.forName("com.mysql.jdbc.Driver"); //Url de connexion String dburl="jdbc:mysql://localhost:3306/labobd"; //Profil/mot de passe String user = "root"; String password = "19AB5"; //connexion à la base dbcon = DriverManager.getConnection(dbUrl,user,password); } 16
17 Code de connexion : exemple (2/2) catch( ClassNotFounDException e ){ // erreur de chargement du pilote } catch( SQLException e ){ // erreur d'obtention de la connexion } finally{ // fermeture de la connexion pour libérer // les ressources de la BD try{ if (dbcon!=null) dbcon.close(); } catch(sqlexception e){...} } 17
18 3 types de requêtes interface Statement requêtes interprétées à chaque exécution interface PreparedStatement requêtes précompilées interface CallableStatement requêtes stockées dans la base18
19 L'interface ResultSet Un objet de type ResultSet est une table représentant le résultat d'une requête à une base de données Le nombre de lignes du tableau peut être nul. Les données de la table sont accessibles ligne par ligne grâce à un curseur Un resultset gère un curseur sur la ligne courante de la table des données satisfaisant aux conditions de la requête. 19
20 Exécution d'une requête SQL de type Statement (1/2) Le type de résultat obtenu dépend de la manière dont on souhaite manipuler le ResultSet 3 manières : TYPE_FORWARD_ONLY ( le curseur se déplace uniquement vers l'avant ) TYPE_SCROLL_INSENSITIVE ( le curseur se déplace en avant et en arrière mais les changements faits par d'autres ne sont pas reflétés dans le ResultSet ) TYPE_SCROLL_SENSITIVE ( le curseur se déplace en avant et en arrière mais sensible aux changements faits par d'autres) Créer un objet de la classe java.sql.statement Statement stmt = dbcon.createstatement( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY); // indique que le ResultSet est scrollable et non // modifiable. ResultSet.CONCUR_UPDATABLE indique // qu'un seul utilisateur à la fois peut modifier // la donnée 20
21 Exécution d'une requête SQL de type Statement (2/2) Par défaut, le ResultSet n'est ni scrollable, ni modifiable Statement stmt = dbcon.createstatement(); Construire la requête SQL Soit la table personne(nom,prenom,age) String reqsql = "select * from personne"; Exécuter la requête ResultSet rs = stmt.executequery( reqsql ); 21
22 Exploiter les résultats d'une requête (1/5) A la création du ResultSet,le curseur est placé avant la première ligne. Pour le déplacer, on dispose des méthodes : next() déplacement d'une ligne en avant previous() déplacement d'une ligne en arrière first() déplacement vers la première ligne last() déplacement vers la dernière ligne beforefirst() déplacement avant la première ligne. Si le ResultSet est vide, cela n'a aucun effet. afterlast() déplacement après la dernière ligne. Si le ResultSet est vide, cela n'a aucun effet. relative(int i) déplace de i lignes par rapport à la position courante absolute(int i) déplace le curseur vers la i-ème ligne 22
23 Exploiter les résultats d'une requête (2/5) Déplacement absolu absolute( int i) i>0 déplacement vers la ligne numéro i rs.absolute(1) => déplacement vers la ligne 1 i<0 déplacement à partir de la fin rs.absolute(-1) => déplacement sur la dernière ligne rs.absolute(-3)=> si 30 lignes, déplacement vers ligne 28 Déplacement relatif relative( int i) On spécifie le nombre de déplacements à partir de la ligne courante i>0 => déplacements en avant i<0 => déplacements en arrière rs.absolute(4); // curseur sur la 4ème ligne rs.relative(-3); // curseur sur la première ligne rs.relative(2); // curseur sur la 3ème ligne 23
24 Exploiter les résultats d'une requête (3/5) On récupère le contenu d'une ligne du ResultSet colonne par colonne Les méthodes d'accès sont construites sur le modèle : getxxx (XXX étant un type primitif ou String) La colonne est spécifiée soit par son nom, soit par son numéro (la première colonne est numérotée 1) - par son nom String getstring(string nomattribut) float getfloat(string nomattribut) - par le numéro de la colonne qui lui correspond String getstring(int indexcolonne) float getfloat(int indexcolonne) idem pour les int, double, long, boolean, Object 24
25 Exploiter les résultats d'une requête (4/5) Pour obtenir le n de la ligne courante int getrow() rs.absolute(5); int i = rs.getrow(); // i=5 Pour tester la position dans le Resultset isfirst, islast, isbeforefirst, isafterlast. if (rs.isafterlast() == false) { rs.afterlast(); } 25
26 Exploiter les résultats d'une requête (4/5) String reqsql = "select * from personne"; ResultSet rs = stmt.executequery( reqsql ); while (rs.next()){ String prenom = rs.getstring("prenom"); int age = rs.getint("age"); } 26
27 Mises à jour de table (1/2) Il est préférable que le ResultSet soit scrollable lors d'une mise à jour Statement stmt = con.createstatement( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); Pour mettre à jour, 2 méthodes: updatexxx avec 2 paramètres (nom et valeur de la colonne) updaterow() rendre effective la mise à jour 27
28 Mises à jour de table (2/2) Nom Prénom Age Meyer René 54->37 Legrand Léa 18 Dupont Marcel->Robert 43 String reqsql = "select * from personne"; ResultSet rs = stmt.executequery( reqsql ); rs.next(); rs.updateint("age",37); rs.last(); rs.updatestring("prénom","robert"); rs.updaterow(); 28
29 L'interface ResultSetMetaData Permet d'obtenir la description du contenu du ResultSet ResultSetMetaData metadata = rs.getmetadata(); A partir de cette information, obtenir le nombre de colonnes du résultat int nbcols = metadata.getcolumncount(); Obtenir le nom de la colonne connaissant son indice (à partir de 1) String nomcol = metadata.getcolumnname( int i ); 29
30 Exemple ResultSet rs = stmt.executequery( "SELECT * FROM personne" ); StringBuffer resultats = new StringBuffer(); ResultSetMetaData metadata = rs.getmetadata(); int nbcols = metadata.getcolumncount(); for ( int i=1;i<=nbcols;i++ ) resultats.append( metadata.getcolumnname( i )+"\t" ); resultats.append( "\n" ); while ( rs.next() ){ for ( int i=1;i<=nbcols;i++ ) // pour simplifier, chaque donnée est du type Object // sinon le type de la valeur est obtenu par getcolumntype resultats.append( rs.getobject( i )+"\t" ); resultats.append( "\n" ); } 30
31 Requêtes préparées L'exécution de chaque requête à une BD nécessite 4 étapes : analyse compilation optimisation exécution Pour des requêtes identiques, les 3 premières étapes n'ont pas à être effectuées de nouveau. Avec la notion de requête préparée, les 3 premières étapes ne sont effectuées qu'une seule fois. JDBC propose l'interface PreparedStatement qui dérive de l'interface Statement pour modéliser cette notion. 31
32 Exécution d'une requête SQL de type PreparedStatement Avec l'interface Statement, on écrivait : Statement smt = dbcon.createstatement(); ResultSet rs = smt.executequery("select * FROM personne" ); Avec l'interface PreparedStatement, on écrit : PreparedStatement psmt = dbcon.preparestatement("select * FROM personne" ); ResultSet rs = psmt.executequery(); On voit que la requête est préparée à l'avance et n'est donc pas transmise en argument au moment de l'exécution ( executequery()). 32
33 Exécution d'une requête SQL de type PreparedStatement Pour préparer des requêtes paramétrées de la forme : SELECT nom FROM Personnes WHERE age >? AND adresse =? On utilise les PreparedStatement avec les méthodes settype(numérodelargument, valeur) Type représente le type de l'argument numérodelargument représente le numéros de l'argument (commençant à 1 dans l'ordre d'apparition dans la requête). valeur représente la valeur qui lui est associée Exemple : PreparedStatement psmt = dbcon.preparestatement ("SELECT nom FROM Personne WHERE age >? AND prenom=?" ); psmt.setint(1, 22); psmt.setstring(2, "Adrien"); ResultSet rs = psmt.executequery(); 33
34 Exécution d'une requête SQL de type PreparedStatement PreparedStatement psmt = dbcon.preparestatement( "update personne set nom =? where prenom like?"); psmt.setstring(1, "Bauer"); psmt.setstring(2, "René"); int i = psmt.executeupdate(): On a changé en Bauer le nom de la personne dont le prénom est René La valeur retournée par executeupdate() est le nombre de lignes mises à jour 34
35 Exporter une BD Mysql Sous easyphp, il faut exporter la base pour obtenir le script sql correspondant On ajoute ensuite une ligne qui permet de vérifier l'existence d'une Base de même nom DROP DATABASE IF EXISTS `tp`; CREATE DATABASE `tp` DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci; USE `tp`; CREATE TABLE `personne` (`nom` varchar(20) NOT NULL default '',`prenom` varchar(20) NOT NULL default '',`age` tinyint(4) NOT NULL default '0',PRIMARY KEY (`nom`,`prenom`)) ENGINE=MyISAM DEFAULT CHARSET=latin1; INSERT INTO `personne` VALUES ('Meyer', 'Luc', 30); INSERT INTO `personne` VALUES ('Dupont', 'René', 40); Il suffit d'enregistrer le script dans un fichier sur votre clé usb ATTENTION : chaque commande sql est situé sur une seule ligne 35
36 Importer le script sql Création d'une classe Java dont le rôle est de : charger le pilote JDBC ouvrir une connexion créer un objet de la classe java.sql.statement lire le fichier texte du script ligne par ligne appliquer la méthode execute( String s) à la ligne lue 36
Java DataBaseConnectivity
Java DataBaseConnectivity JDBC JDBC est une API Java (ensemble de classes et d interfaces défini par SUN et les acteurs du domaine des SGBD) permettant d accéder aux bases de données à l aide du langage
Plus en détailIntroduction à JDBC. Accès aux bases de données en Java
Introduction à JDBC Accès aux bases de données en Java Eric Cariou Université de Pau et des Pays de l'adour Département Informatique Eric.Cariou@univ-pau.fr 1 Introduction JDBC : Java Data Base Connectivity
Plus en détailJDBC le langage Java XVI-1 JMF
JDBC Java Database Connectivity XVI-1 JDBC JDBC est une API Java (ensemble de classes et d'interfaces défini par SUN et les acteurs du domaine des BD) permettant d'accéder aux bases de données à l'aide
Plus en détailApplication BdD et JDBC. Introduction 1/28. I Dans tout les cas, une seule problématique. I Quelques alternatives :
ntroduction 1/28 2/28 Anne-Cécile Caron Licence MAGE - Bases de Données 2013-2014 Application base de données Pour le développeur : Quel est l environnement? type de client (mode client serveur, intranet,...)
Plus en détailProgrammation d application Bases de données avec Java
Plan du document Programmation d application Bases de données avec Java INT Problématique slide 3 Correspondance diagramme de classe slide 4 UML vers schéma relationnel Programmation BD avec JDBC slide
Plus en détailTP Programmation Java / JDBC / Oracle
TP Programmation Java / JDBC / Oracle 1. Connectivité avec une base de données Oracle au travers de l interface JDBC L interface de programmation (API) JDBC (Java DataBase Connectivity) est une librairie
Plus en détailAccès aux bases de données
13 Accès aux bases de données Les bases de données fournissent un mécanisme de stockage persistant pour les données d application et dans bien des cas, elles sont essentielles au fonctionnement des applications.
Plus en détailJDBC JDBC. Java DataBase Connectivity
Java DataBase Connectivity Philippe GENOUD UJF Février 2004 1 Introduction Offre une API unique d accès à toute BD conforme au standard SQL-92 Objectifs : Fournir un accès homogène aux SGBD une application
Plus en détail1. Langage de programmation Java
1. Langage de programmation Java 1.1. Définitions Langage de 3e génération le plus utilisé actuellement Portabilité : exécutable sur tout types d'ordinateurs quel que soit le système d'exploitation (Windows,
Plus en détailCREATION WEB DYNAMIQUE
CREATION WEB DYNAMIQUE IV ) MySQL IV-1 ) Introduction MYSQL dérive directement de SQL (Structured Query Language) qui est un langage de requêtes vers les bases de données relationnelles. Le serveur de
Plus en détailJava et les bases de données: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java. Michel Bonjour http://cuiwww.unige.
: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java Michel Bonjour http://cuiwww.unige.ch/~bonjour Plan JDBC: API bas niveau pour l accès aux BD (SQL) - Introduction - JDBC et : Java, ODBC, SQL
Plus en détailOpenPaaS Le réseau social d'entreprise
OpenPaaS Le réseau social d'entreprise Spécification des API datastore SP L2.3.1 Diffusion : Institut MinesTélécom, Télécom SudParis 1 / 12 1OpenPaaS DataBase API : ODBAPI...3 1.1Comparaison des concepts...3
Plus en détailPHP 5. La base de données MySql. A. Belaïd 1
PHP 5 La base de données MySql A. Belaïd 1 Base de données C est quoi une base de données? Une base de données contient une ou plusieurs tables, chaque table ayant un ou plusieurs enregistrements Exemple
Plus en détailCréation et Gestion des tables
Création et Gestion des tables Version 1.0 Z Grégory CASANOVA 2 Sommaire 1 Introduction... 3 2 Pré-requis... 4 3 Les tables... 5 3.1 Les types de données... 5 3.1.1 Les types de données Sql Server... 5
Plus en détailLa persistance des données dans les applications : DAO, JPA, Hibernate... COMPIL 2010 francois.jannin@inp-toulouse.fr 1
La persistance des données dans les applications : DAO, JPA, Hibernate... COMPIL 2010 francois.jannin@inp-toulouse.fr 1 Plan 1. Généralités sur la persistance des données dans les applications 2. La connection
Plus en détailOlivier Mondet http://unidentified-one.net
T-GSI Ch.4 Le Langage SQL LDD, LCD Cet exercice guidé reprend le plan suivis lors de l intervention de formation faite pour l académie de Versailles. L objectif principal visait en la présentation du langage
Plus en détailJava Database Connectivity (JDBC) - Langage SQL
Java Database Connectivity (JDBC) - Langage SQL Chapitres traités Principe de base Ce chapitre traite essentiellement de la relation entre Java et les bases de données. Dans cette étude, je m'intéresse
Plus en détailConnexion à SQL Server 2005 à partir du serveur d application SJSAS 9 Utilisation d une interface JDBC
Connexion à SQL Server 2005 à partir du serveur d application SJSAS 9 Utilisation d une interface JDBC Sommaire 1. Objectifs et intérêts... 2 2. Intégrer le driver SQL Server dans SJSAS 9... 2 2.1. Télécharger
Plus en détailLe langage SQL (première partie) c Olivier Caron
Le langage SQL (première partie) 1 Plan Le S.G.B.D. postgres Le langage SQL Langage de manipulation de données Langage de requêtes 2 Quelques mots sur Postgres (1/2) Travaux de Stonebraker (Univ. Berkeley)
Plus en détailBases de données relationnelles
Bases de données relationnelles Système de Gestion de Bases de Données Une base de données est un ensemble de données mémorisé par un ordinateur, organisé selon un modèle et accessible à de nombreuses
Plus en détailJava et les bases de données
Michel Bonjour http://cuiwww.unige.ch/~bonjour CENTRE UNIVERSITAIRE D INFORMATIQUE UNIVERSITE DE GENEVE Plan Introduction JDBC: API SQL pour Java - JDBC, Java, ODBC, SQL - Architecture, interfaces, exemples
Plus en détailQuelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)
Quelques patterns pour la persistance des objets avec DAO Ce cours présente des modèles de conception utilisés pour effectuer la persistance des objets Université de Nice Sophia-Antipolis Version 1.4 30/8/07
Plus en détailApplication web de gestion de comptes en banques
Application web de gestion de comptes en banques Objectif Réaliser une application Web permettant à un client de gérer ses comptes en banque Diagramme de cas d'utilisation 1 Les cas d'utilisation Connexion
Plus en détail1. Qu'est-ce que SQL?... 2. 2. La maintenance des bases de données... 2. 3. Les manipulations des bases de données... 5
1. Qu'est-ce que SQL?... 2 2. La maintenance des bases de données... 2 2.1 La commande CREATE TABLE... 3 2.2 La commande ALTER TABLE... 4 2.3 La commande CREATE INDEX... 4 3. Les manipulations des bases
Plus en détailLe langage SQL pour Oracle - partie 1 : SQL comme LDD
Le langage SQL pour Oracle - partie 1 : SQL comme LDD 1 SQL : Introduction SQL : Structured Query Langage langage de gestion de bases de donn ees relationnelles pour Définir les données (LDD) interroger
Plus en détail1/ Présentation de SQL Server :
Chapitre II I Vue d ensemble de Microsoft SQL Server Chapitre I : Vue d ensemble de Microsoft SQL Server Module: SQL server Semestre 3 Année: 2010/2011 Sommaire 1/ Présentation de SQL Server 2/ Architerture
Plus en détailLe Langage De Description De Données(LDD)
Base de données Le Langage De Description De Données(LDD) Créer des tables Décrire les différents types de données utilisables pour les définitions de colonne Modifier la définition des tables Supprimer,
Plus en détailLicence de MIDO - 3ème année Spécialités Informatique et Mathématiques Appliquées
Licence de MIDO - 3ème année Spécialités Informatique et Mathématiques Appliquées ANNEE 2014 / 2015 Désignation de l enseignement : Bases de données Nom du document : TP SQL sous PostgreSQL Rédacteur :
Plus en détailExploitation de bases de données relationnelles et orientées objet IFT287
Université de Sherbrooke Département d informatique Exploitation de bases de données relationnelles et orientées objet IFT287 Notes complémentaires et synthétiques Marc Frappier, Ph.D. professeur Avertissement
Plus en détailBases de Données relationnelles et leurs systèmes de Gestion
III.1- Définition de schémas Bases de Données relationnelles et leurs systèmes de Gestion RAPPELS Contraintes d intégrité sous Oracle Notion de vue Typage des attributs Contrainte d intégrité Intra-relation
Plus en détailSGBDR. Systèmes de Gestion de Bases de Données (Relationnelles)
SGBDR Systèmes de Gestion de Bases de Données (Relationnelles) Plan Approches Les tâches du SGBD Les transactions Approche 1 Systèmes traditionnels basés sur des fichiers Application 1 Gestion clients
Plus en détailISC21-1 --- Système d Information Architecture et Administration d un SGBD Compléments SQL
ISC21-1 --- Système d Information Architecture et Administration d un SGBD Compléments SQL Jean-Marie Pécatte jean-marie.pecatte@iut-tlse3.fr 16 novembre 2006 ISIS - Jean-Marie PECATTE 1 Valeur de clé
Plus en détailCOMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2
SQL Sommaire : COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2 COMMANDES DE MANIPULATION DE DONNEES... 2 COMMANDES DE CONTROLE TRANSACTIONNEL... 2 COMMANDES DE REQUETE DE DONNEES... 2 COMMANDES
Plus en détailTP3 : Creation de tables 1 seance
Universite de Versailles IUT de Velizy - Algorithmique 2005/2006 TP3 : Creation de tables 1 seance Objectif : Creation et modication de tables dans une base de donnees. Avant de commencer ce TP, terminer
Plus en détailLangage et Concepts de ProgrammationOrientée-Objet 1 / 40
Déroulement du cours Introduction Concepts Java Remarques Langage et Concepts de Programmation Orientée-Objet Gauthier Picard École Nationale Supérieure des Mines de Saint-Étienne gauthier.picard@emse.fr
Plus en détailLes BASES de DONNEES dans WampServer
Les BASES de DONNEES dans WampServer 1 Définitions Générales Une base de données (BDD) permet d'enregistrer, de stocker, de ranger des données de façon organisée et hiérarchisée. SQL est le langage qui
Plus en détailInstallation d'un serveur FTP géré par une base de données MySQL
BTS INFORMATIQUE DE GESTION Option Administrateur de réseaux développement d applications COMPTE-RENDU D ACTIVITE ACTIVITE N 2 Nom et Prénom : Casanova Grégory Identification (objectif) de l activité Installation
Plus en détailNotes de cours : bases de données distribuées et repliquées
Notes de cours : bases de données distribuées et repliquées Loïc Paulevé, Nassim Hadj-Rabia (2009), Pierre Levasseur (2008) Licence professionnelle SIL de Nantes, 2009, version 1 Ces notes ont été élaborées
Plus en détailCours: Administration d'une Base de Données
Bases de Données Avancées Module A IUT Lumière, License CE-STAT 2006-2007 Pierre Parrend Cours: Administration d'une Base de Données Table of Contents Principes...1 Structure d'un Base de Données...1 Architecture...1
Plus en détail1. Base de données SQLite
Dans ce TP, nous allons voir comment créer et utiliser une base de données SQL locale pour stocker les informations. La semaine prochaine, ça sera avec un WebService. On repart de l application AvosAvis
Plus en détailI. MySQL : Serveur et SGBD
Le Système de Gestion de Base de Données MySQL I. MySQL : Serveur et SGBD Menu I. MySQL : Serveur et SGBG II. Création d'une base de données avec MySQL MySQL est un système de gestion et conception de
Plus en détailSQL Historique 1982 1986 1992
SQL Historique 1950-1960: gestion par simple fichier texte 1960: COBOL (début de notion de base de données) 1968: premier produit de sgbdr structuré (IBM -> IDMS) 1970-74: élaboration de l'outil d'analyse
Plus en détailLangage SQL (1) 4 septembre 2007. IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes
Langage SQL (1) Sébastien Limet Denys Duchier IUT Orléans 4 septembre 2007 Notions de base qu est-ce qu une base de données? SGBD différents type de bases de données quelques systèmes existants Définition
Plus en détailLes bases de données
Les bases de données Introduction aux fonctions de tableur et logiciels ou langages spécialisés (MS-Access, Base, SQL ) Yves Roggeman Boulevard du Triomphe CP 212 B-1050 Bruxelles (Belgium) Idée intuitive
Plus en détailI4 : Bases de Données
I4 : Bases de Données Passage de UML au modèle relationnel Georges LOUIS Département Réseaux et Télécommunications Université de La Rochelle Module I4 2008-2009 1 G.Louis Sommaire 1 Des classes aux tables
Plus en détailHistorisation des données
Historisation des données Partie 1 : mode colonne par Frédéric Brouard, alias SQLpro MVP SQL Server Expert langage SQL, SGBDR, modélisation de données Auteur de : SQLpro http://sqlpro.developpez.com/ "SQL",
Plus en détailPDO : PHP Data Object 1/13
PDO : PHP Data Object 1/13 Tous ne sont que des extensions... Les fonstions mysql_* : API mysql Les fonctions mysqli_* aussi Il en est de même pour PDO PDO (avec le pilote PDO MySQL Driver et Extension
Plus en détailPHP 4 PARTIE : BASE DE DONNEES
PHP 4 PARTIE : BASE DE DONNEES 1. Introduction 2. Présentation de MySQL 3. Principe 4. Connexion 5. Interrogation 6. Extraction des données 7. Fonctions de services 8. Traitement des erreurs 9. Travaux
Plus en détailLangage SQL : créer et interroger une base
Langage SQL : créer et interroger une base Dans ce chapitre, nous revenons sur les principales requêtes de création de table et d accès aux données. Nous verrons aussi quelques fonctions d agrégation (MAX,
Plus en détailMysql. Les requêtes préparées Prepared statements
Mysql Les requêtes préparées Prepared statements Introduction Les prepared statements côté serveur sont une des nouvelles fonctionnalités les plus intéressantes de MySQL 4.1 (récemment sorti en production
Plus en détailINSTALLATION DE L APPLICATION DU CONTEXTE ITASTE
INSTALLATION DE L APPLICATION DU CONTEXTE ITASTE Le responsable de la société Itaste utilise une application installée sur son poste : elle est programmée en VBA sous Microsoft Access et pourvue d une
Plus en détailComment Connecter une Base de Données MySQL via un Driver JDBC Avec OpenOffice.org
Comment Connecter une Base de Données MySQL via un Driver JDBC Avec OpenOffice.org Diffusé par Le Projet Documentation OpenOffice.org OpenOffice.org Documentation Project How-To Table des matières 1. Introduction...3
Plus en détailPour les débutants. langage de définition des données
Pour les débutants SQL : langage de définition des données Les bases de données sont très utilisées dans les applications Web. La création, l interrogation et la manipulation des données de la base sont
Plus en détailTP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile
TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface
Plus en détailLangage propre à Oracle basé sur ADA. Offre une extension procédurale à SQL
Cours PL/SQL Langage propre à Oracle basé sur ADA Offre une extension procédurale à SQL PL/SQL permet d utiliser un sous-ensemble du langage SQL des variables, des boucles, des alternatives, des gestions
Plus en détailLogiciel de gestion de caisse et d ardoises
6, bd maréchal Juin F-14050 Caen cedex 4 Spécialité Informatique 2 e année Rapport de projet Logiciel de gestion de caisse et d ardoises BOIRLEAUD Pierre-Jean MOLINS Nicolas REHFELD Vincent Table des matières
Plus en détailJava - MySQL. Code: java-mysql
Java - MySQL java-mysql Java - MySQL Code: java-mysql Originaux url: http://tecfa.unige.ch/guides/tie/html/java-mysql/java-mysql.html url: http://tecfa.unige.ch/guides/tie/pdf/files/java-mysql.pdf Auteurs
Plus en détailOptimisations des SGBDR. Étude de cas : MySQL
Optimisations des SGBDR Étude de cas : MySQL Introduction Pourquoi optimiser son application? Introduction Pourquoi optimiser son application? 1. Gestion de gros volumes de données 2. Application critique
Plus en détailConstruire une base de donnée pour bibliothèque
Construire une base de donnée pour bibliothèque S'il y a bien un emploi typique pour un ordinateur, c'est celui de gérer une base de données. La première d'entre elles est bien sûr la base des fichiers
Plus en détailPHP et mysql. Code: php_mysql. Olivier Clavel - Daniel K. Schneider - Patrick Jermann - Vivian Synteta Version: 0.9 (modifié le 13/3/01 par VS)
PHP et mysql php_mysql PHP et mysql Code: php_mysql Originaux url: http://tecfa.unige.ch/guides/tie/html/php-mysql/php-mysql.html url: http://tecfa.unige.ch/guides/tie/pdf/files/php-mysql.pdf Auteurs et
Plus en détailPHP. Bertrand Estellon. 26 avril 2012. Aix-Marseille Université. Bertrand Estellon (AMU) PHP 26 avril 2012 1 / 214
PHP Bertrand Estellon Aix-Marseille Université 26 avril 2012 Bertrand Estellon (AMU) PHP 26 avril 2012 1 / 214 SQLite et PDO Base de données SQLite et PDO SQLite écrit les données relatives à la base dans
Plus en détailNFA 008. Introduction à NoSQL et MongoDB 25/05/2013
NFA 008 Introduction à NoSQL et MongoDB 25/05/2013 1 NoSQL, c'est à dire? Les bases de données NoSQL restent des bases de données mais on met l'accent sur L'aspect NON-relationnel L'architecture distribuée
Plus en détailPratique et administration des systèmes
Université Louis Pasteur Licence Informatique (L2) UFR de Mathématiques et Informatique Année 2007/2008 1 But du TP Pratique et administration des systèmes TP10 : Technologie LAMP Le but de ce TP est de
Plus en détailModélisation et Gestion des bases de données avec mysql workbench
Modélisation et Gestion des bases de données avec mysql workbench par novembre 2011 Table des matières 1 Installation 3 1.1 Ecran de chargement 3 1.2 Page d accueil 3 2 Réalisation d une base de données
Plus en détail4. Utilisation d un SGBD : le langage SQL. 5. Normalisation
Base de données S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Présentation du module Contenu général Notion de bases de données Fondements / Conception Utilisation :
Plus en détailBases de données Page 1 de 11. Bases de données. Prof. : Dzenan Ridjanovic
Bases de données Page 1 de 11 1- Objectifs généraux Bases de données Prof. : Dzenan Ridjanovic acquérir les principes et concepts fondamentaux dans le domaine des bases de données; développer les connaissances
Plus en détailPlan. Accès aux données dans le framework.net. ADO.NET Entity Framework LINQ ADO.NET ADO.NET. 1. ADO.NET Mode connecté Mode non connecté
Plan Accès aux données dans le framework.net Lionel Seinturier 1. Mode connecté Mode non connecté 2. 3. Université Lille 1 Lionel.Seinturier@univ-lille1.fr 27/3/14 1 Lionel Seinturier 2 Lionel Seinturier
Plus en détailModule Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS
Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS 1. Introduction Nous allons aborder la notion de surcouche procédurale au sein des SGBDS relationnels tels que Oracle (PLSQL)
Plus en détailLa programmation orientée objet Gestion de Connexions HTTP Manipulation de fichiers Transmission des données PHP/MySQL. Le langage PHP (2)
Le langage PHP (2) Walid Belkhir Université de Provence belkhir@cmi.univ-mrs.fr http://www.lif.univ-mrs.fr/ belkhir/ 1 / 54 1 La programmation orientée objet 2 Gestion de Connexions HTTP 3 Manipulation
Plus en détailChapitre 3 LE MODELE RELATIONNEL ET SQL (DDL)
Chapitre 3 LE MODELE RELATIONNEL ET SQL (DDL) Un modèle de données définit un mode de représentation de l information selon trois composantes : 1. Des structures de données. 2. Des contraintes qui permettent
Plus en détailFileMaker 13. Guide de référence SQL
FileMaker 13 Guide de référence SQL 2013 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, Californie 95054 FileMaker et Bento sont des marques commerciales de
Plus en détailBases de données relationnelles & SQL
Bases de données relationnelles & SQL Objectifs Appréhender les concepts du modèle relationnel. Etre capable de concevoir un schéma relationnel. Etre capable de créer une base de données relationnelle
Plus en détailRMI le langage Java XII-1 JMF
Remote Method Invocation (RMI) XII-1 Introduction RMI est un ensemble de classes permettant de manipuler des objets sur des machines distantes (objets distants) de manière similaire aux objets sur la machine
Plus en détailORACLE 10G DISTRIBUTION ET REPLICATION. Distribution de données avec Oracle. G. Mopolo-Moké prof. Associé UNSA 2009/ 2010
ORACLE 10G DISTRIBUTION ET REPLICATION Distribution de données avec Oracle G. Mopolo-Moké prof. Associé UNSA 2009/ 2010 1 Plan 12. Distribution de données 12.1 Génération des architectures C/S et Oracle
Plus en détailGestion de base de données
Université Libre de Bruxelles Faculté de Philosophie et Lettres Département des Sciences de l Information et de la Communication Gestion de base de données Projet : Take Off ASBL Cours de M. A. Clève STIC-B-505
Plus en détailPartie 0 : Gestion des tablespace et des utilisateurs... 3
Sommaire Partie 0 : Gestion des tablespace et des utilisateurs... 3 1- Créer deux TableSpaces votre_nom-tbs et Votre_nom-TempTBS :... 3 2. Créer un utilisateur qui porte votre nom :... 3 3. Attribuer à
Plus en détailPHP. PHP et bases de données
Accés aux bases de données Une des raisons du succès de PHP Support d un grand nombre de bases - MySQL - Oracle - PostgreSQL - SQLite - Microso> Access - DBM - IBM Informix -... Accés aux bases de données
Plus en détailTP Contraintes - Triggers
TP Contraintes - Triggers 1. Préambule Oracle est accessible sur le serveur Venus et vous êtes autorisés à accéder à une instance licence. Vous utiliserez l interface d accés SQL*Plus qui permet l exécution
Plus en détail14/04/2014. un ensemble d'informations sur un sujet : exhaustif, non redondant, structuré, persistant. Gaëlle PERRIN SID2 Grenoble.
Gaëlle PERRIN SID2 Grenoble Le 10/04/2014 Base de Données (BD) : une grande quantité de données, centralisées ou non, servant pour les besoins d'une ou plusieurs applications, interrogeables et modifiables
Plus en détailExercices sur SQL server 2000
Exercices sur SQL server 2000 La diagramme de classe : Exercices sur SQL server 2000 Le modèle relationnel correspondant : 1 Créer les tables Clic-droit on Tables et choisir «New Table» Créer la table
Plus en détailModélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework
Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework L'objectif de ce document est de poser des bases de réflexion sur la modélisation d'un projet réalisé
Plus en détailProcédures Stockées WAVESOFT... 12 ws_sp_getidtable... 12. Exemple :... 12. ws_sp_getnextsouche... 12. Exemple :... 12
Table des matières Les Triggers... 2 Syntaxe... 2 Explications... 2 Les évènements déclencheurs des triggers... 3 Les modes de comportements des triggers... 4 Les pseudo tables... 5 Exemple... 6 Les procédures
Plus en détailConfigurer la supervision pour une base MS SQL Server Viadéis Services
Configurer la supervision pour une base MS SQL Server Référence : 11588 Version N : 2.2 : Créé par : Téléphone : 0811 656 002 Sommaire 1. Création utilisateur MS SQL Server... 3 2. Configuration de l accès
Plus en détailA.E.C. GESTION DES APPLICATIONS TECHNOLOGIE DE L'INFORMATION LEA.BW
A.E.C. GESTION DES APPLICATIONS TECHNOLOGIE DE L'INFORMATION LEA.BW Groupe : 322 Exploitation des Banques de données 420-PK6-SL (1-2-1) Étape : 3 Professeur Nom: Marcel Aubin Courriel : maubin@cegep-st-laurent.qc.ca
Plus en détailMise en oeuvre d'une base de données mono-utilisateur avec SQLite
Mise en oeuvre d'une base de données mono-utilisateur avec SQLite Utilisation de SQLite dans le logiciel CASSIS Plan Le contexte scientifique avec le logiciel CASSIS La problématique avec Mysql La solution
Plus en détailA QUOI SERVENT LES BASES DE DONNÉES?
BASE DE DONNÉES OBJET Virginie Sans virginie.sans@irisa.fr A QUOI SERVENT LES BASES DE DONNÉES? Stockage des informations : sur un support informatique pendant une longue période de taille importante accès
Plus en détailCompte Rendu d intégration d application
ISMA 3EME ANNEE Compte Rendu d intégration d application Compte Rendu Final Maxime ESCOURBIAC Jean-Christophe SEPTIER 19/12/2011 Table des matières Table des matières... 1 Introduction... 3 1. Le SGBD:...
Plus en détailSystème de Gestion de Bases de Données Relationnelles. MySQL. Youssef CHAHIR
Système de Gestion de Bases de Données Relationnelles MySQL Youssef CHAHIR 1 PLAN Introduction Démarrer MySQL Syntaxe de MySQL Types des attributs Identificateurs Effectuer des requêtes Fonctions de MySQL
Plus en détailCONCOURS DE L AGRÉGATION INTERNE «ÉCONOMIE ET GESTION» SESSION 2015 SECONDE ÉPREUVE
CONCOURS DE L AGRÉGATION INTERNE «ÉCONOMIE ET GESTION» SESSION 2015 SECONDE ÉPREUVE Épreuve de cas pratique dans la spécialité correspondant à l'option choisie par le candidat Option D Durée de préparation
Plus en détailSQL sous SqlServer OLIVIER D. DEHECQ Olivier http://www.entraide-info.fr 0
2013 SQL sous SqlServer OLIVIER D. DEHECQ Olivier http://www.entraide-info.fr 0 Table des matières Signalétique... 2 1 Les bases du SQL... 3 2 SQL server... 6 2 Références des exercices...21 DEHECQ Olivier
Plus en détailas Architecture des Systèmes d Information
Plan Plan Programmation - Introduction - Nicolas Malandain March 14, 2005 Introduction à Java 1 Introduction Présentation Caractéristiques Le langage Java 2 Types et Variables Types simples Types complexes
Plus en détailMySQL avec Mac OS X. Quelques manipulations avec le terminal sont nécessaires si une version de MySQL est déjà lancée:
MySQL avec Mac OS X MySQL est un moteur de bases de données relationnelles (SGBDR système de gestion de bases de données relationnelles) basé sur le langage SQL. Il s'agit d'un langage normalisé de requêtes
Plus en détailBases de données avancées
Bases de données avancées Jean-Yves Antoine LI - Université François Rabelais de Tours Jean-Yves.Antoine@univ-tours.fr UFR Sciences et Techniques IUP SIR Blois Master 1 Bases de Données avancées IUP Blois,
Plus en détailBASES DE DONNEES TP POSTGRESQL
2003-2004 Université Paris Dauphine IUP Génie Mathématique et Informatique IUP 2 ème année et Formation Continue BASES DE DONNEES TP POSTGRESQL Maude Manouvrier La reproduction de ce document par tout
Plus en détailTRANSFERT DE LA BASE DE DONNEES DE LA BIBLIOTHEQUE DU LSE VERS LE WEB
Projet de 6 me semestre 1999 Laboratoire des Syst mes d'exploitation (LSE) Section Syst mes de Communication, EPF-Lausanne TRANSFERT DE LA BASE DE DONNEES DE LA BIBLIOTHEQUE DU LSE VERS LE WEB EtudiantÊ:
Plus en détailBases de Données Avancées
1/62 Bases de Données Avancées Introduction & Rappel Conception et Modélisation Thierry Hamon Bureau H202 - Institut Galilée Tél. : 33 1.48.38.35.53 Bureau 150 LIM&BIO EA 3969 Université Paris 13 - UFR
Plus en détailTD : Requêtes SQL (BDR.TD2-1) INSA 3IF 2008-2009
TD : Requêtes SQL (BDR.TD2-1) INSA 3IF 2008-2009 Loïc Maisonnasse 1 Objectif Ce TD a pour objectif de vous familiariser avec le langage de requêtes SQL. Et de vous apprendre à écrire des requêtes SQL pour
Plus en détail