Olivier Mondet
|
|
- Brian Carignan
- il y a 8 ans
- Total affichages :
Transcription
1 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 SQL LDD, et en une initiation à la partie LCD. Tous les ordres SQL sont définis dans les autres chapitres de ce cours. Nous ne reviendrons donc pas sur la syntaxe. Olivier Mondet Mise en place MySQL doit être installé au préalable, soit seul, soit avec EasyPHP-ModGSI. Pour cela suivre les guides correspondants. Cet exercice utilise la version de MySQL installée avec EasyPHP-ModGSI. Nous utiliserons le client MySQL livré avec l installation (dans EasyPHP1-8-ModGSI\mysql\bin) qui se nomme mysql (à ne pas confondre avec mysqld qui est le «logiciel» de base de données en luimême). Connexion La connexion à la base de données se fait par l instruction mysql u root p puis en pressant la touche entrée. Le mot de passe demandé est root par défaut avec la version de MySQL fournie par EasyPHP-ModGSI. Voici la fenêtre de connexion : C:\Program Files\EasyPHP1-8-ModGSI\mysql\bin>mysql -u root -p Enter password: **** Your MySQL connection id is 2 to server version: max Le prompt attend des ordres SQL de syntaxe correcte ou des commandes propres à MySQL. Création d une base de données et création des tables : Nous allons créer la base de données des stagiaires gsi, où seront implémentées les relations suivantes : etablissement (nume, nome, ville) nume est la clé primaire stagiaire (nums, noms, prenoms, mails, nume) nums est la clé primaire, nume est la clé étrangère en référence à nume de la table etablissement Nous ne préciserons pas le moteur de base de données et utiliserons le moteur par défaut InnoDB de MySQL. Ce moteur remplace le moteur MyISAM plus ancien et ne respectant pas (entre autre) l intégrité fonctionnelle. Se référer aux autres chapitres pour de plus amples explications. Ch.4 - Applications (exercice de découverte).doc page 1 / 9 om ( )
2 CREATE DATABASE gsi; Query OK, 1 row affected (0.09 sec) USE gsi; Database changed CREATE TABLE etablissement -> ( -> nume INT NOT NULL, -> nome VARCHAR(30), -> ville VARCHAR(30), -> CONSTRAINT pk_etablissement PRIMARY KEY(nume) -> ); Query OK, 0 rows affected (0.20 sec) On aura noté que juste après avoir créé la base de données, on se connecte à celle-ci (avec USE). C est dans la base de données gsi que nous allons créer les tables. CREATE TABLE stagiaire -> ( -> nums INT NOT NULL, -> noms VARCHAR(30), -> prenoms VARCHAR(30), -> mails VARCHAR(50), -> nume INT NOT NULL, -> CONSTRAINT pk_stagiaire PRIMARY KEY(nums), -> CONSTRAINT fk_stag_etab FOREIGN KEY(nume) REFERENCES etablissement(nume ) -> ); Query OK, 0 rows affected (0.16 sec) MySQL offre diverses possibilités de typage des champs : Types numériques exacts Types approchés Les entiers Dates Chaînes Chaînes de grande taille Enumérations NUMERIC, DECIMAL (DEC), INTEGER (INT)(4 octets) et SMALLINT FLOAT, REAL et DOUBLE PRECISION TINYINT (1 octet), SMALLINT (2 octets), MEDIUMINT (3 octets), INTEGER (INT)(4 octets), BIGINT (8 octets) DATE (' '), DATETIME (' :00:00') (attention les dates sont notées à l anglaise AAAA-JJ-MM) CHAR (format nom compressé où 1caractère = 1octet), VARCHAR (format compressé, à choisir à partir de 5 à 10 caractères) BLOB, TEXT SET Les clauses CONSTRAINT permettent de déclarer les clés primaires et les clés étrangères. Le nommage pk_table ou fk_table1_table2 est un moyen signifiant de nommer les contraintes en fonction de leur rôle : pk_table est le nom de la contrainte qui déclare la clé primaire d une table, fk_table1_table2 est le nom de la contrainte qui déclare la clé étrangère qui assure le l intégrité référentielle entre la table n 1 et la table n 2. Les noms des contraintes doivent être uniques pour une base de données. On aura noté que tant qu un point virgule ; n est pas inséré (marquant la fin d un ordre et donc le début de son interprétation par MySQL) le prompt passe de à ->. Se référer aux autres chapitres pour de plus amples explications. Ch.4 - Applications (exercice de découverte).doc page 2 / 9 om ( )
3 Nous pouvons vérifier l existence de la base de données et des tables. SHOW DATABASES; Database information_schema cinema gsi mysql phpmyadmin rows in set (0.00 sec) SHOW TABLES; Tables_in_gsi etablissement stagiaire rows in set (0.00 sec) L ordre SHOW TABLES implique d être connecté à une base de données, car les tables affichées sont celle de la base de données active. Insertion des valeurs et violation de contraintes Nous allons entrer un premier enregistrement. INSERT INTO etablissement VALUES ('1','Geoffroy-Saint-Hilaire','ETAMPES') ; Query OK, 1 row affected (0.09 sec) Nous allons entrer un second enregistrement en tentant une violation de contrainte relative à la clé primaire. INSERT INTO etablissement VALUES ('1','Vilgenis','MASSY'); ERROR 1062 (23000): Duplicata du champ '1' pour la clef 1 On remarque que MySQL réagit et indique bien un problème sur la clé primaire avec un champ comportant un doublon. Problème qui devrait se régler avec une insertion correcte. INSERT INTO etablissement VALUES ('2','Vilgenis','MASSY'); Query OK, 1 row affected (0.03 sec) Nous allons insérer des valeurs dans la seconde table en respectant l intégrité fonctionnelle relative au champ nume (l établissement doit exister dans la table etablissement avant l insertion). INSERT INTO stagiaire VALUES ('1','Georges','Dumont','georges.dumont@mail.fr','1'); Query OK, 1 row affected (0.06 sec) INSERT INTO stagiaire VALUES ('2','Bernardette','Martin','b.martin@mail.f r','1'); Query OK, 1 row affected (0.08 sec) Ch.4 - Applications (exercice de découverte).doc page 3 / 9 om ( )
4 Nous allons tenter une violation de clé étrangère (intégrité fonctionnelle) en saisissant un code établissement n existant pas dans la table etablissement. INSERT INTO stagiaire VALUES ('3','Yolande','Kraft','yolande1678@mail.fr','3'); ERROR 1452 (23000): Cannot add or update a child row: a foreign key constraint f ails (`gsi/stagiaire`, CONSTRAINT `fk_stag_etab` FOREIGN KEY (`nume`) REFERENCES `etablissement` (`nume`)) L intégrité référentielle est donc bien respectée. Si vous utilisez une version antérieure de MySQL ou si vos tables sont déclarées avec la mention type=myisam, vous serez surpris de constater que MySQL ne respecte pas l intégrité référentielle. Autrement dit, l insertion aurait été acceptée. Vous pouvez en faire le constat en réessayant cet exercice avec les tables déclarées de la façon suivante : CREATE TABLE etablissement ( nume INT NOT NULL, nome VARCHAR(30), ville VARCHAR(30), CONSTRAINT pk_etablissement PRIMARY KEY(nume) )type=myisam; CREATE TABLE stagiaire ( nums SMALLINT NOT NULL auto_increment, noms VARCHAR(30), prenoms VARCHAR(30), mails VARCHAR(50), nume INT NOT NULL, CONSTRAINT pk_stagiaire PRIMARY KEY(nums), CONSTRAINT fk_stag_etab FOREIGN KEY(nume) REFERENCES etablissement(nume) )type=myisam; Bien sur le moteur InnoDB semble plus performant si on s attache à l aspect «intégrité référentielle», cependant le moteur InnoDB est moins performant que le moteur MyISAM en termes de rapidité d exécution. C est pour cela que MySQL était souvent choisi pour les sites Web avec son moteur MyISAM. Vous pouvez en faire le constat en réessayant cet exercice avec les tables déclarées comme ci-dessus. Avec le moteur InnoDB il est impossible de supprimer un élément référencé. Pour terminer, on peut afficher le contenu de nos tables SELECT * -> FROM etablissement; nume nome ville 1 Geoffroy-Saint-Hilaire ETAMPES 2 Vilgenis MASSY 2 rows in set (0.00 sec) SELECT * -> FROM stagiaire; nums noms prenoms mails nume Georges Dumont georges.dumont@mail.fr 1 2 Bernardette Martin b.martin@mail.fr rows in set (0.00 sec) Ch.4 - Applications (exercice de découverte).doc page 4 / 9 om ( )
5 ainsi que leur structure. DESCRIBE etablissement; Field Type Null Key Default Extra nume int(11) NO PRI nome varchar(30) YES NULL ville varchar(30) YES NULL rows in set (0.05 sec) DESCRIBE stagiaire; Field Type Null Key Default Extra nums int(11) NO PRI noms varchar(30) YES NULL prenoms varchar(30) YES NULL mails varchar(50) YES NULL nume int(11) NO MUL rows in set (0.05 sec) Mise à jour de la structure des tables Notre base de données prend en compte la discipline des enseignants participant au stage (CAPET). etablissement (nume, nome, ville) nume est la clé primaire discipline (numd, libd) numd est la clé primaire stagiaire (nums, noms, prenoms, mails, nume, numd) nums est la clé primaire, nume est la clé étrangère en référence à nume de la table etablissement numd est la clé étrangère en référence à numd de la table discipline Il faut donc ajouter une table, puis mettre à jour la structure de la table stagiaire en ajoutant le champ numd et l intégrité référentielle. L ajout de la table et l insertion de valeurs. CREATE TABLE discipline -> ( -> numd CHAR(1) NOT NULL, -> libd VARCHAR(40), -> CONSTRAINT PK_discipline PRIMARY KEY(numd) -> ); Query OK, 0 rows affected (0.11 sec) INSERT INTO discipline VALUES ('B','Capet B'); Query OK, 1 row affected (0.05 sec) INSERT INTO discipline VALUES ('D','Capet D'); Query OK, 1 row affected (0.05 sec) Ch.4 - Applications (exercice de découverte).doc page 5 / 9 om ( )
6 L ajout du champ numd à la structure de la table stagiaire (ALTER) et la mise à jour (UPDATE) de la table (le stagiaire n 1 sera CAPET B, le stagiaire n 2 sera CAPET D). ALTER TABLE stagiaire -> ADD numd CHAR(1) NOT NULL; Query OK, 2 rows affected (0.36 sec) Enregistrements: 2 Doublons: 0 Avertissements: 0 UPDATE stagiaire -> SET numd = 'B' -> WHERE nums = '1'; Query OK, 1 row affected (0.06 sec) Enregistrements correspondants: 1 ModifiÚs: 1 Warnings: 0 UPDATE stagiaire -> SET numd = 'D' -> WHERE nums = '2'; Query OK, 1 row affected (0.05 sec) Enregistrements correspondants: 1 ModifiÚs: 1 Warnings: 0 L ajout de la contrainte d intégrité référentielle sur la clé étrangère. ALTER TABLE stagiaire -> ADD CONSTRAINT FK_disc_stag FOREIGN KEY(numd) REFERENCES discipline(numd ); Query OK, 2 rows affected (0.41 sec) Enregistrements: 2 Doublons: 0 Avertissements: 0 Notez que l on ajoute cette contrainte après la mise à jour de la table stagiaire car sinon les champs numd seraient vides (NULL) et MySQL refuserait d ajouter la contrainte sur des champs vides (c est une violation de contrainte justement). Ce problème se pose uniquement parce que la table possède déjà des enregistrements. Modification de la structure d une table (suite) et suppression d un table Finalement nous ne voulons plus garder la discipline des stagiaires et donc revenir à notre base de données telle qu elle était auparavant. Nous devons mettre à jour la structure de la table stagiaire et supprimer la contrainte d intégrité référentielle, puis le champ numd. ALTER TABLE stagiaire -> DROP FOREIGN KEY FK_disc_stag; Query OK, 2 rows affected (0.25 sec) Enregistrements: 2 Doublons: 0 Avertissements: 0 ALTER TABLE stagiaire -> DROP numd; Query OK, 2 rows affected (0.24 sec) Enregistrements: 2 Doublons: 0 Avertissements: 0 Nous pouvons supprimer la table discipline. DROP TABLE discipline; Query OK, 0 rows affected (0.11 sec) La suppression des tables doit toujours se faire en tenant compte des contraintes d intégrité référentielle. On doit toujours commencer par supprimer les tables comportant des clés étrangères puis les tables n en comportant pas. Il s agit de l ordre exactement inverse de l ordre de création des tables. Ch.4 - Applications (exercice de découverte).doc page 6 / 9 om ( )
7 Création d utilisateur et attribution de droits Sous MySQL la gestion des utilisateurs posait souvent des problèmes (avec les versions antérieures à la n 5). Il était fréquent d entrer en force les paramètres utilisateur pour qu ils soient pris en compte. La version 5 de MySQL semble mieux intégrer la gestion des utilisateurs. Les droits (ou privilèges) que l on peut accorder aux utilisateurs correspondent aux ordres que l on veut leur laisser passe. Par exemple les privilèges sur les tables : SELECT, INSERT, UPDATE, DELETE, CREATE, DROP. Nous allons créer un utilisateur nommé bob dont le mot de passe sera CREATE USER 'bob' IDENTIFIED BY '123456'; Query OK, 0 rows affected (0.14 sec) Vous devriez pouvoir vous connecter avec ce compte (sinon reconnectez vous sous root et saisissez FLUSH PRIVILEGES pour forcer MySQL à recharger ses tables système). C:\Program Files\EasyPHP1-8-ModGSI\mysql\bin>mysql -u bob -p Enter password: ****** Your MySQL connection id is 62 to server version: max L ennui c est que bob ne possède aucun privilège! Il ne peut même pas se connecter à notre base gsi. USE gsi; ERROR 1044 (42000): AccÞs refusú pour l'utilisateur: 'bob'@'@%'. Base 'gsi' L attribution des privilèges porte sur une base (ou toutes les bases) et sur des tables (ou toutes les tables). Nous allons simplement donner le privilège SELECT sur la table etablissement à bob. GRANT SELECT ON gsi.etablissement TO bob@localhost IDENTIFIED BY '123456' ; Query OK, 0 rows affected (0.03 sec) Après le privilège SELECT, nous avons précisés la base de données et la table, puis l utilisateur et le domaine (localhost = le poste uniquement, % tous les postes). Ici bob ne pourra exercer ses droits qu au niveau local uniquement. C:\Program Files\EasyPHP1-8-ModGSI\mysql\bin>mysql -u bob -p Enter password: ****** Your MySQL connection id is 66 to server version: max USE gsi; Database changed SELECT * -> FROM etablissement; nume nome ville 1 Geoffroy-Saint-Hilaire ETAMPES 2 Vilgenis MASSY 2 rows in set (0.03 sec) SELECT * -> FROM stagiaire; ERROR 1142 (42000): La commande 'SELECT' est interdite Ó l'utilisateur: 'bob'@'@ localhost' sur la table 'stagiaire' Ch.4 - Applications (exercice de découverte).doc page 7 / 9 om ( )
8 On aura vérifié que bob peut bien faire un SELECT sur la table etablissement et pas sur la table stagiaire. Vous aurez noté que lorsque nous avons attribué le privilège nous avons dû redonner le mot de passe de bob. Ce qui limite très fortement la portée de l ordre CREATE USER. En effet, nous pouvons créer un utilisateur en même temps que nous lui accordons ses privilèges. GRANT SELECT ON gsi.* TO marc@'%' IDENTIFIED BY 'tomate34'; Query OK, 0 rows affected (0.05 sec) exit Bye C:\Program Files\EasyPHP1-8-ModGSI\mysql\bin>mysql -u marc -p Enter password: ******** Your MySQL connection id is 68 to server version: max USE gsi; Database changed SELECT * -> FROM stagiaire; nums noms prenoms mails nume Georges Dumont georges.dumont@mail.fr 1 2 Bernardette Martin b.martin@mail.fr rows in set (0.03 sec) INSERT INTO stagiaire -> VALUES ('3','Henri','Grandin','henri75@mail.fr','2'); ERROR 1142 (42000): La commande 'INSERT' est interdite Ó l'utilisateur: sur la table 'stagiaire' Notre utilisateur marc a bien eu accès aux tables de la base gsi. Par contre il ne peut pas faire autre chose que des SELECT. Si nous voulons simplement changer le mot de passe de marc. SET PASSWORD FOR 'marc'@'%' = PASSWORD('nouveau_mot'); Query OK, 0 rows affected (0.00 sec) Si nous voulons supprimer les privilèges de marc. REVOKE SELECT ON gsi.* FROM 'marc'@'%'; Query OK, 0 rows affected (0.00 sec) Notre utilisateur ne pourra pas se connecter à la base gsi. Nous pouvons décider de le supprimer. DROP USER marc@'%'; Query OK, 0 rows affected (0.05 sec) L utilisateur est définitivement supprimer et ne pourras plus se connecter à la base de données. Remarquez que nous avons précisé marc@'%' : avec les ordres CREATE USER et DROP USER vous n êtes pas obligé de préciser '%', car par défaut, quand vous saisissez CREATE/DROP USER titi, l utilisateur sera titi@'%'. Il n y a que si vous voulez créer un utilisateur local titi@'locahost' ou pour une station particulière titi@'monposte' que vous devez ajouter cette mention : CREATE/DROP USER titi@'localhost'. Ch.4 - Applications (exercice de découverte).doc page 8 / 9 om ( )
9 Création de vues Depuis la version 5, MySQL intègre la possibilité de créer des vues. Les vues permettent de projeter une image particulière d une ou plusieurs tables. Par exemple une table où l on masque certaines colonnes ou certaines lignes, ou bien des tables que l on met en relation dans une vue. Prenons pour exemple la table stagiaire, à partir de laquelle nous voulons simplement établir la liste des membres avec leurs noms et leurs prénoms (on peut aisément imaginer que pour des raisons de confidentialité ou de vie privée des champs n apparaissent plus). CREATE VIEW stage -> AS SELECT noms, prenoms -> FROM stagiaire; Query OK, 0 rows affected (0.05 sec) SELECT * -> FROM stage; noms prenoms Georges Dumont Bernardette Martin 2 rows in set (0.00 sec) Que faire avec cette vue? Avec la partie précédente on peut très bien imaginer que cette liste épurée puisse être parcourue par un utilisateur créé pour cet effet. GRANT SELECT ON gsi.stage TO sophie@'%' IDENTIFIED BY 'fraise65'; Query OK, 0 rows affected (0.05 sec) exit Bye C:\Program Files\EasyPHP1-8-ModGSI\mysql\bin>mysql -u sophie -p Enter password: ******** Your MySQL connection id is 91 to server version: max USE gsi; Database changed SELECT * -> FROM stage; noms prenoms Georges Dumont Bernardette Martin 2 rows in set (0.02 sec) Ch.4 - Applications (exercice de découverte).doc page 9 / 9 om ( )
Le 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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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é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étailSupport de cours. Introduction à SQL et MySQL. 2003, Sébastien Namèche (sebastien@nameche.fr)
Support de cours Introduction à SQL et MySQL 2003, Sébastien Namèche (sebastien@nameche.fr) Licence de Libre Diffusion des Documents -- LLDD version 1 (Par Bernard Lang, http://pauillac.inria.fr/~lang/licence/lldd.html)
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é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é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é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é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étailWEB DEVELOPER SGBD SYSTEME DE GESTION DE BASES DE DONNEES L étudiant sera capable :
BES WEBDEVELOPER - SYSTEME DE GESTION DE BASES DE DONNEES - 5XBDR-1 1 WEB DEVELOPER SGBD SYSTEME DE GESTION DE BASES DE DONNEES L étudiant sera capable : dans le cadre de mise en situations simples et
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étailBible MySQL! La première version de MySQL est apparue en 1995. Cette première version est créée pour un usage personnel à partir de msql.
Bible MySQL! Bref historique de MySQL 1. MySQL MySQL est le Système de Gestion de Base de Données Relationnelle (SGBDR) Open Source le plus répandu dans le monde. Il est développé par MySQL AB, une entreprise
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étailL installation a quelque peu changée depuis les derniers tutos, voici une actualisation.
Gestion de parc Informatique OCS, GLPI sur Debian 5 Jonathan Gautier Open Computer and Software Inventory Next Generation (OCS inventory NG) est une application permettant de réaliser un inventaire sur
Plus en détailInstallation et Mise en œuvre de MySQL
T-GSI STAGE RENOVATION - SQL.Chapitre 2 - Installation et Mise en œuvre de MySQL Olivier Mondet http://unidentified-one.net A. Pourquoi choisir MySQL? A.1. MySQL, très controversé La base de données MySQL
Plus en détailEncryptions, compression et partitionnement des données
Encryptions, compression et partitionnement des données Version 1.0 Grégory CASANOVA 2 Compression, encryption et partitionnement des données Sommaire 1 Introduction... 3 2 Encryption transparente des
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é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étailMysql avec EasyPhp. 1 er mars 2006
Mysql avec EasyPhp 1 er mars 2006 Introduction MYSQL dérive directement de SQL (Structured Query Language) qui est un langage de requètes vers les bases de données relationnelles. Il en reprend la syntaxe
Plus en détailPHP et les Bases de données - Généralités
PHP et les Bases de données - Généralités Conception d une base de données Méthodes utilisées : MERISE, UML Modèle conceptuel des données MCD, Modèle logique MLD, Modèle Physique MPD. Ces aspects seront
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étailServeur Linux : FTP. Mise en place d un service FTP sous Linux. Bouron Dimitri 20/04/2014
Mise en place d un service FTP sous Linux Bouron Dimitri 20/04/2014 Ce document sert de démonstration concise pour l installation, la configuration, la sécurisation, d un serveur FTP sous Linux utilisant
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é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étailStockage du fichier dans une table mysql:
Stockage de fichiers dans des tables MYSQL avec PHP Rédacteur: Alain Messin CNRS UMS 2202 Admin06 30/06/2006 Le but de ce document est de donner les principes de manipulation de fichiers dans une table
Plus en détailLes Triggers SQL. Didier DONSEZ. Université de Valenciennes Institut des Sciences et Techniques de Valenciennes donsez@univ-valenciennes.
Les Triggers SQL Didier DONSEZ Université de Valenciennes Institut des Sciences et Techniques de Valenciennes donsez@univ-valenciennes.fr 1 Sommaire Motivations Trigger Ordre Trigger Ligne Condition Trigger
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é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étailLe Langage SQL version Oracle
Université de Manouba École Supérieure d Économie Numérique Département des Technologies des Systèmes d Information Le Langage SQL version Oracle Document version 1.1 Mohamed Anis BACH TOBJI anis.bach@isg.rnu.tn
Plus en détailECR_DESCRIPTION CHAR(80), ECR_MONTANT NUMBER(10,2) NOT NULL, ECR_SENS CHAR(1) NOT NULL) ;
RÈGLES A SUIVRE POUR OPTIMISER LES REQUÊTES SQL Le but de ce rapport est d énumérer quelques règles pratiques à appliquer dans l élaboration des requêtes. Il permettra de comprendre pourquoi certaines
Plus en détailSynchronisation Mysql (Replication)
Synchronisation Mysql (Replication) [Petit avertissement : Bon, après relecture, je constate que c'est l'un des plus mauvais document que j'ai écrit. Mais bon, il est quand même utile ce torchon.] Nous
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étailGestion des utilisateurs et de leurs droits
Gestion des utilisateurs et de leurs droits Chap. 12, page 323 à 360 Lors de la création d'un utilisateur vous devez indiquer son nom, ses attributs, son profil, la méthode d'authentification (par le SE
Plus en détailIntroduction à MySQL (ou MySQL en 3 heures montre en main)
Contexte MySQL Introduction à MySQL (ou MySQL en 3 heures montre en main) Guillaume Allègre Guillaume.Allegre@silecs.info INP Grenoble - Formation Continue 2012 Contexte MySQL LAMP LAMP - contexte et architecture
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étailBases de données et sites WEB
Bases de données et sites WEB Cours2 : Sécurité et contrôles d accès Anne Doucet 1 Authentification Autorisation Privilèges Rôles Profils Limitations de ressources Plan Audit Contrôle d accès via les vues
Plus en détailGestion des utilisateurs, des groupes et des rôles dans SQL Server 2008
Gestion des utilisateurs, des groupes et des rôles dans SQL Server 2008 Version 1.0 Z Grégory CASANOVA 2 Les utilisateurs, les groupes et les rôles Sommaire 1 Introduction... 4 2 Gestion des accès serveur...
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étailINSTITUT NATIONAL DES TELECOMMUNICATIONS CONTROLE DES CONNAISSANCES. 2. Les questions sont indépendantes les unes des autres.
INSTITUT NATIONAL DES TELECOMMUNICATIONS CONTROLE DES CONNAISSANCES Durée : 1h30 Date : 17/05/2006 Coordonnateurs : Amel Bouzeghoub et Bruno Defude Documents autorisés : ceux distribués en cours Avertissements
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é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é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étailPlan. Bases de Données. Sources des transparents. Bases de SQL. L3 Info. Chapitre 4 : SQL LDD Le langage de manipulation de données : LMD
Plan Bases de Données L3 Info Céline Rouveirol 2010-2011 Bases de Données 1 / 77 Sources des transparents Bases de Données 2 / 77 Bases de SQL - M.P. Dorville/F. Goasdoué, LRI, Université Paris Sud - V.
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étailHowTo Installer egroupware 1.2 sur SME Serveur 7.0
HowTo Installer egroupware 1.2 sur SME Serveur 7.0 Auteur: Stéphane Gauvin, sgauvin@serviceinfosg.com Contribution: N/A Version supportée: SME Serveur 7.0 License: GPL Dernière Mise à jour: 18/03/2006
Plus en détailBases de SQL. Hacks 1-6 CHAPITRE UN
CHAPITRE UN Bases de SQL Hacks 1-6 Même les commandes SQL les plus simples peuvent comporter des variantes curieuses ; ce chapitre vous montrera qu un programmeur astucieux peut exploiter les nombreuses
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étailCours Bases de données 2ème année IUT
Cours Bases de données 2ème année IUT Cours Bilan : Des vues à PL/SQL corrigé Anne Vilnat http://www.limsi.fr/individu/anne/cours Plan 1 Cas exemple 2 Les tables... 3 Vues et index 4 Privilèges 5 Fonctions
Plus en détailAuto-évaluation Oracle: cours de base
Auto-évaluation Oracle: cours de base Document: F0475Test.fm 14/01/2008 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTION AUTO-ÉVALUATION ORACLE: COURS DE
Plus en détailLes déclencheurs. Version 1.0. Grégory CASANOVA
Les déclencheurs Version 1.0 Grégory CASANOVA 2 Les déclencheurs [09/07/09] Sommaire 1 Introduction... 3 2 Pré-requis... 4 3 Les déclencheurs du DML... 5 3.1 Introduction... 5 3.2 Création d un déclencheur
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étailMySQL - Réplication. Fichiers de relais et de statut de la réplication. Mise en place de la réplication
MySQL - Réplication Réplication MySQL MySQL supporte la réplication unidirectionnelle interne. Un serveur sert de maître, et les autres servent d esclaves. Le serveur entretient des logs binaires, ainsi
Plus en détailwindows. deb http://ftp.fr.debian.org/debian/ etch main deb-src http://ftp.fr.debian.org/debian/ etch main
installer une debian celle-ci par exemple (http://vapiemojo.fr/openlibre/debian/pmbetsiteweb/debian-40r3-i386-netinst.iso ) on valide les choix par défaut, et on met aucune interface graphique voir: http://vapiemojo.fr/openlibre/debian/pmbetsiteweb/install_debian_pour_pmb.pdf
Plus en détailTP base de données SQLite. 1 Différents choix possibles et choix de SQLite : 2 Définir une base de donnée avec SQLite Manager
TP base de données SQLite 1 Différents choix possibles et choix de SQLite : La plupart des logiciels de gestion de base de données fonctionnent à l aide d un serveur. Ils demandent donc une installation
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é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é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étailObjectifs du TP : Initiation à Access
Objectifs du TP : Initiation à Access I. Introduction Microsoft Access fait partie de l ensemble Microsoft Office. C est un SGBDR (système de gestion de bases de données relationnelles) présentant une
Plus en détailComment Accéder à des Bases de Données MySQL avec Windows lorqu'elles sont sur un Serveur Linux
Comment Accéder à des Bases de Données MySQL avec Windows lorqu'elles sont sur un Serveur Linux Distribué par Le Projet Documentation d'openoffice.org Table of Contents 1) Préambule...3 2) Télécharger
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é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étailCompétences Business Objects - 2014
Compétences Business Objects - 2014 «Mars-Juin 2014. Réf : Version 1 Page 1 sur 34 Sommaire CONTEXTE DE LA REMISE A NIVEAU EN AUTOFORMATION... 3 1. MODELISATION... 4 1.1 DESCRIPTION FONCTIONNEL DE L'APPLICATION
Plus en détailDOSSIER D'ACTIVITES SUR LE PHP N 03 Créer une base de données MySQL avec PHPMyAdmin
DOSSIER D'ACTIVITES SUR LE PHP N 03 Créer une base de données MySQL avec PHPMyAdmin Objectifs : Apprendre à l apprenant à lancer un serveur local «Apache» Apprendre à l'apprenant à lancer un serveur MySQL
Plus en détailBases de données Oracle Virtual Private Database (VPD) pour la gestion des utilisateurs d applications
Bases de données Oracle Virtual Private Database (VPD) pour la gestion des utilisateurs d applications P.-A. Sunier, HEG-Arc Neuchâtel avec le concours de J. Greub pierre-andre.sunier@he-arc.ch http://lgl.isnetne.ch/
Plus en détailMySQL / SQL EXEMPLES
MySQL_exemples_janv04_mpT EXEMPLES 1 MySQL / SQL EXEMPLES Typologie du langage Il est possible d'inclure des requêtes SQL dans un programme écrit dans un autre langage (en langage C par exemple), ainsi
Plus en détailIntroduction au Système de Gestion de Base de Données et aux Base de Données
Introduction au Système de Gestion de Base de Données et aux Base de Données Formation «Gestion des données scientifiques : stockage et consultation en utilisant des bases de données» 24 au 27 /06/08 Dernière
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étailLe protocole FTP (File Transfert Protocol,
Mise en place d un serveur FTP sous CentOS 6.2 Nicolau Fabien, Emanuele Prestifilippo Le protocole FTP (File Transfert Protocol, en français protocole de transfert de fichiers) permet d envoyer ou récupérer
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é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é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é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étailPlan Général Prévisionnel (1/2) (non contractuel) Internet et Outils L1/IO2 2006-2007 S2-IO2 Bases de données: Jointures, Transactions
Général Prévisionnel (1/2) (non contractuel) Internet et Outils L1/IO2 2006-2007 S2-IO2 Bases de données: Jointures, Cours Internet et Outils: [1/12] Intro, Internet, Web, XHTML (2H) [2/12] XHTML(2H) [3/12]
Plus en détailwww.evogue.fr SUPPORT DE COURS / PHP PARTIE 3
L i a m T A R D I E U www.evogue.fr SUPPORT DE COURS / PHP PARTIE 3 Sommaire Sommaire... 2 Eléments initiaux... 3 Base de données... 3 Tables... 4 membres... 4 commandes... 4 articles... 4 details_commandes...
Plus en détailSommaire. Etablir une connexion avec une base de données distante sur PostGreSQL
Sommaire Etablir une connexion avec une base de données distante sur PostGreSQL 1 Connexion avec le module dblink...3 1.1 Création du module dblink... 3 1.2 Exemple de Mise en oeuvre... 4 1.3 Création
Plus en détailArchitecture de la plateforme SBC
Simple Business Connector Architecture de la plateforme SBC Titre Projet Description Architecture de la plateforme SBC Plateforme SBC Ce document reprend toutes les étapes de l'installation du serveur
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étailDevoir Data WareHouse
Université Paris XIII Institut Galilée Master 2-EID BENSI Ahmed CHARIFOU Evelyne Devoir Data WareHouse Optimisation, Transformation et Mise à jour utilisées par un ETL Mr R. NEFOUSSI Année 2007-2008 FICHE
Plus en détailIntégrité sémantique dans les bases de données relationnelles
Intégrité sémantique dans les bases de données relationnelles 1 - Intégrité sémantique Bernard ESPINASSE Professeur à Aix-Marseille Université (AMU Ecole Polytechnique Universitaire de Marseille Fev. 2013
Plus en détail