Conception et Création de Bases de Données

Dimension: px
Commencer à balayer dès la page:

Download "Conception et Création de Bases de Données"

Transcription

1 Conception et Création de Bases de Données SVA8511A (Licence Biologie 3 e année) T. Lecroq LITIS EA 4108 Batiment Extension Biologie - 1er étage Thierry.Lecroq@univ-rouen.fr Cours rédigé par L. Mouchard Année T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

2 Contenu du cours 1 Organisation de l UE 2 Concepts génériques Base de données Est-ce si simple? Principe client-serveur 3 Langage SQL Pourquoi? LES langages Schémas 4 Première base de données Conception Insertion dans une table Affichage T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

3 Plan 1 Organisation de l UE 2 Concepts génériques Base de données Est-ce si simple? Principe client-serveur 3 Langage SQL Pourquoi? LES langages Schémas 4 Première base de données Conception Insertion dans une table Affichage T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

4 Organisation de l Unité d Enseignement Cours concepts génériques des bases de données ; bases du langage structuré de requêtes SQL ; Travaux dirigés (apprentissage du langage SQL) descriptif approfondi des fonctions SQL ; exercices de conception de bases de données ; normalisation des relations et construction des tables ; construction des requêtes SQL. Travaux pratiques (pratique du langage SQL) mise en pratique des TD sous MySQL ; requêtes et vérifications sous phpmyadmin ; réalisation pratique d une base de données grandeur nature. T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

5 Plan 1 Organisation de l UE 2 Concepts génériques Base de données Est-ce si simple? Principe client-serveur 3 Langage SQL Pourquoi? LES langages Schémas 4 Première base de données Conception Insertion dans une table Affichage T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

6 Qu est-ce qu une base de données (relationnelle)? c est généralement un ensemble de données : de taille importante ; organisé (on dit également structuré) ; interrogeable grâce à un langage de requêtes ; elle constitue une représentation du monde réel, qui, dans sa version relationnelle, manipule des entités, par exemple : étudiant ; enseignant ; cours. et des associations entre ces entités, par exemple : suivre : un étudiant suit un cours ; donner : un enseignant donne un cours ; noter : un enseignant note un étudiant. etudiant suit note donne enseignant légende : entité association cours T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

7 Qu est-ce qu un SGBD? Un SGBD (Système de Gestion de Bases de Données) est un ensemble logiciel (un ensemble de programmes) qui permet : le stockage des informations ; la gestion des entités et des mécanismes souples pour représenter les associations (dans le modèle relationnel) ; l affichage de tout ou partie de la base de données. Quelques exemples de SGBD : Access, DBase, Ingres, Informix, msql, MySQL, Oracle, O 2, PostgresQL, Sybase,... Le modèle relationnel n est pas le seul possible : nous pouvons considérer les éléments de la base comme des objets, de définir les méthodes propres à leur utilisation et aux interactions entre les objets (équivalentes aux associations dans le modèle que nous avons ébauché). C est le cas par exemple de la base O 2 (qui est Orientée-Objet). T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

8 Est-ce si simple? Nous venons de décrire rapidement ce que pourrait être une base de données : quelques entités (étudiants, enseignants, cours) ; quelques associations (suivre, donner, noter) entre les entités ; mais suffit-il de mettre des noms en face des entités pour que le tour soit joué? l entité cours n est sans doute pas satisfaisante : cours, TD ou TP ; l association noter n est pas satisfaisante : un enseignant ne note pas un étudiant mais note : un contrôle continu, un compte-rendu de TP ou un examen final. T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

9 Pourquoi utiliser une base de données? Parce que : les données sont séparées (chaque entité est représentée par une table indépendante des autres données) et donc réutilisables ; les données sont spécifiées : les attributs d une entité sont connus et contraints ; les données sont sécurisées : les transactions concurrentes sur les données sont efficacement gérées ; les mécanismes d importation/exportation des données existent et permettent d alimenter efficacement les tables ; les mécanismes génériques d interrogation des données sont déjà développés, le temps de développement d une application est par conséquent réduit ; possibilités d interfaçage T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

10 Modèle client-serveur requête requête réponse réponse internet 1. émission 2. réception 5. réception 4. émission réponse requête 3. traitement client serveur client : Le client peut interroger le serveur en utilisant : un langage de requêtes structuré (compatible avec la norme ANSI SQL) un langage de programmation classique doublé d un connecteur spécifique (DBC : DataBase Connectivity) : ODBC pour le langage C, JDBC pour Java et équivalents pour les langages C++, Delphi, Perl, Python, TCL,... Le client peut être installé sur tout type de système d exploitation (Windows, Mac OS, Linux, OS/2,...), il interagit le plus souvent avec le serveur au travers d un mécanisme réseau. T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

11 Modèle client-serveur serveur : c est le cœur du SGBD, il : attend les sollications des clients, éventuellement nombreux, et provenant de divers systèmes d exploitation ; effectue les recherches correspondantes dans la base ; retourne la réponse correspondante au client dans un format indépendant du système d exploitation. il est assez facile d étendre ce modèle pour que plusieurs serveurs se répartissent la charge et répondent de façon efficace aux sollicitations des multiples clients (comme les moteurs de recherche par exemple). T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

12 Plan 1 Organisation de l UE 2 Concepts génériques Base de données Est-ce si simple? Principe client-serveur 3 Langage SQL Pourquoi? LES langages Schémas 4 Première base de données Conception Insertion dans une table Affichage T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

13 Le langage de requêtes SQL (Structured Query Language) : le pourquoi d un tel langage si l on souhaite que le client et le serveur se comprennent, quelque soit le système d exploitation des machines sur lesquels ils sont installés, il faut que le langage qui leur serve à s échanger requêtes et réponses aux requêtes soit normalisé ; le langage de requêtes doit être indépendant de la structuration interne des entités ; les différents systèmes de gestion de bases de données (Oracle, MySQL, PostgresQL,...) doivent pouvoir échanger des données aisément. T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

14 Le langage de requêtes SQL (Structured Query Language) : le pourquoi d un tel langage un langage de requêtes structuré SQL (Structured Query Language) est un langage conçu pour extraire des informations de la base de données. Le premier SQL à la fin des années 70 s appelait Oracle... c est à présent une des grandes entreprises informatiques, comme peuvent l être Intel (processeurs), Microsoft (environnements graphiques), Cisco (réseaux Internet) ; il a été normalisé (ou agréé par le American National Standards Institute) en 1986, 1992 et 1999 ; nous utiliserons pour les TD/TP le SGBD MySQL, conforme à la plus récente des normes préconisées par l ANSI, qui est décrit dans un grand nombre d ouvrages et de sites www. T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

15 Le langage de requêtes SQL (Structured Query Language) : structuration Le langage de commandes SQL peut être séparé suivant quatre catégories : DDL (Data Definition Language) : langage de manipulation des tables représentant les entités (exemples : commandes alter, create, drop) DML (Data Manipulation Language) : langage de manipulation des données présentées dans les tables (exemples : delete, insert, load data, update) DQL (Data Query Language) : langage de requêtes (d interrogation) sur les données (exemple : select avec toutes les clauses) DCL (Data Control Language) : langage de contrôle d accès aux données (exemples : alter password, grant, revoke, commit, rollback) T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

16 Les schémas Il est possible de considérer quatre niveaux de ce que nous nommerons des schémas : externe 1 externe 2 externe 3 différentes vues conceptuel entités/relations interne index/optimisation physique fichiers/répertoires UN schéma externe est UNE façon dont les données seront présentées à l utilisateur, en quelque sorte, le masque de saisie ou de visualisation, ce que nous appellerons la vue. Il peut y avoir plusieurs schémas externes pour une même base de données ; le schéma conceptuel est la façon dont les données sont réparties dans les tables, en fonction des entités qui ont été définies et des différents attributs associés à une entité ; T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

17 Les schémas le schéma interne est la façon dont sont organisés les index et tous les éléments associés indirectement aux données, permettant une optimisation des ressources de stockage et de meilleurs performance lors de l accès aux données ; le schéma physique correspond au schéma de stockage des tables et bases en fonction du matériel (disques durs, mémoire,...) et du système d exploitation. Ce schéma ne concerne que l administrateur. Ces deux derniers niveaux sont moins faciles d accès, nous ne parlerons par la suite que succintement du schéma interne. T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

18 Plan 1 Organisation de l UE 2 Concepts génériques Base de données Est-ce si simple? Principe client-serveur 3 Langage SQL Pourquoi? LES langages Schémas 4 Première base de données Conception Insertion dans une table Affichage T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

19 Conception d une première base de données Nous allons concevoir une petite base de données toute simple. Elle va contenir les noms, prénoms et filières des étudiants inscrits pour cette option. Elle consiste en une seule table, que nous nommerons etudiant, qui contient quatre attributs typés : le prénom : une chaîne de caractères d au plus 30 lettres ; le nom : une chaîne de caractères d au plus 30 lettres ; la qualité : au choix Melle, Mme ou M. ; la filière : une chaîne de caractères de 6 caractères ; T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

20 Code SQL correspondant à la création de la base de données base du cours création de la base de données par une requête SQL Syntaxe : create database nom base nom base est constitué de lettres, et chiffres et du caractère souligné, il peut comporter jusqu à 30 lettres et doit être unique. create database base du cours ; Vous devez créer une base de données par projet que vous développez même s il est possible théoriquement de regrouper des tables sans aucun rapport les unes avec les autres dans une même base. utilisation de la base nouvellement créée : use base du cours ; T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

21 Code SQL correspondant à la création de la table etudiant création de la table Syntaxe : create table nom table(liste de déclarations d attributs) les règles de construction de nom table sont identiques à nom base... create table etudiant( prenom varchar(30), nom varchar(30), qualite enum( Melle, Mme, M. ) not null, filiere varchar(6) default SVA331 ) ; nom prenom qualite filiere etudiant VARCHAR (30) VARCHAR (30) ENUM ( Melle, Mme, M. ) VARCHAR (6) T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

22 Affichage des informations relatives à la table etudiant show databases ; va afficher base du cours show tables ; va afficher etudiant describe etudiant ; va afficher la structure de la table sous la forme suivante : Field Type Null Key Default Extra prenom varchar(30) YES NULL nom varchar(30) YES NULL qualite enum( Melle, Mme, M. ) Melle filiere varchar(6) YES SVA331 Certains champs ici (champs Key et Extra) ne sont pas utilisées pour l instant, le reste est compréhensible. T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

23 Les types des attributs Une déclaration d attribut est de la forme nom attribut type d attribut [contraintes] les types des attributs pouvant être : des chaînes de caractères : char(longueur), varchar(longueur), tinytext, text, mediumtext, longtext,... des numériques : tinyint, smallint, mediumint, int, bigint, float, double, real,... des dates : timestamp, date, time, datetime, year,... ensemblistes : enum(valeurs), set(valeurs) T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

24 Les contraintes sur les attributs Certaines contraintes peuvent être ajoutées lors de la déclaration des attributs, elles sont de plusieurs ordres : contraintes de domaine (valeurs prises par un attribut not null - pour l attribut qualite, default pour l attribut filiere, unique). Ces contraintes peuvent être implicites, comme pour la valeur par défaut de l attribut qualite ; contraintes d intégrité d entité (précise la clé primaire de chaque table : nous en reparlerons plus tard primary key) contraintes d intégrité référentielle (assure de la cohérence entre clés primaires et clés étrangères correspondantes : nous en reparlerons plus tard foreign key, references) T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

25 Insertion d éléments dans une table Nous avons plusieurs possibilités : insertion simple totale : Syntaxe : insert into ident table values(liste complète des valeurs) ; insert into etudiant values( Marie, Delabio, Melle, SVA331 ) ; insertion simple partielle : Syntaxe : insert into ident table(liste attributs) values(liste de valeurs) ; insert into etudiant(prenom) values( Pierre ) ; insertion multiple (totale ou partielle) : Syntaxe : insert into ident table(liste attributs) values(plusieurs listes de valeurs) ; insert into etudiant(prenom) values( Paul ),( Isabelle ) ; insertion à partir des données d un fichier : Syntaxe : load data infile nom fichier into table ident table ; load data infile fic liste etudiants into table etudiant ; T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

26 Affichage (simplifié) des éléments d une table Pour vérifier que les éléments ont bien été ajoutés à la table, il nous faut affiche le contenu de cette table : Syntaxe : select liste attributs from nom table ; select * from etudiant ; (affichage de tous les attributs) prenom nom qualite filiere Marie Delabio Melle SVA331 Pierre null Melle SVA331 Paul null Melle SVA331 Isabelle null Melle SVA331 T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

27 Affichage (simplifié) des éléments d une table select prenom from etudiant ; select nom from etudiant ; prenom nom Marie Delabio Pierre null Paul null Isabelle null select prenom as Prénom, filiere as Filière from etudiant ; Prénom Filière Marie SVA331 Pierre SVA331 Paul SVA331 Isabelle SVA331 T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

28 Affichage avec clause restrictive des éléments d une table Nous pouvons souhaiter n afficher qu une partie des informations disponibles dans une table, pour cela nous utiliserons le mot clé where suivi d une clause de restriction : Syntaxe : select liste attributs from nom table where clause restrictive ; select * from etudiant where nom<> null ; prenom nom qualite filiere Marie Delabio Melle SVA331 select prenom as Prénom, filiere as Filière from etudiant where prenom like P% ; Prénom Filière Pierre SVA331 Paul SVA331 T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

29 Contenu du cours 5 Association 1,n Table filiere Clé primaire Peuplement Nouvelle table etudiant Clé étrangère Requête conjointe 6 Association n, n Table cours Table etu cou Peuplement Requête conjointe T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

30 Plan 5 Association 1,n Table filiere Clé primaire Peuplement Nouvelle table etudiant Clé étrangère Requête conjointe 6 Association n, n Table cours Table etu cou Peuplement Requête conjointe T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

31 Création de la table filiere En fait, on s aperçoit bien vite que le code (sur six caractères) de la filière n est pas explicite, et que l on souhaiterait avoir, pour chaque étudiant plus d informations sur la filière dans laquelle il est inscrit. Nous allons créer une entité spécifique, nommée filière regroupant les informations qui lui sont associées, nous établirons ensuite une association entre ces deux entités. L entité filière sera représentée par une table filiere contenant : le code : une chaîne de caractères de 8 caractères (celui que l on trouve dans la table etudiant pour l instant) ; l intitulé complet : une chaîne de caractères (< 40 lettres) ; le parcours : licence, master ou doctorat codé sur un caractère ; l année : un entier sur un chiffre ; T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

32 Création de la table filiere : clé primaire Nous allons à présent étoffer notre table en ajoutant un attribut particulier qui va nous permettre d identifier de façon non-ambigüe une entrée dans la table filiere : c est une clé primaire, comme un numéro de sécu ou un numéro d étudiant. Nous pourrions utiliser le code de l université, mais nous allons plutôt utiliser un entier, qui aura comme propriété d être auto increment not null. create table filiere( fil id int(3) auto increment not null, fil code char(6), fil intitule varchar(40), fil parcours enum( l, m, d ), fil annee int(1), primary key (fil id)) ; T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

33 Ce qu il faut en comprendre Voici ce qu en dit MySQL : Field Type Null Key Default Extra fil id int(3) pri null auto increment fil code char(6) yes null fil intitule varchar(30) yes null fil parcours enum( l, m, d ) yes null fil annee int(1) yes null On peut noter la colonne Key et Extra où fil id est indiqué comme pri et auto increment T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

34 Peuplement de la table filiere Nous allons à présent peupler notre table filiere. insert into filiere(fil code, fil intitule, fil parcours, fil annee) values( SVA331, Biochimie et Biologie Moléculaire, l,3), ( SVA332, Biologie Cellulaire et Physiologie, l,3), ( SVA333, Sciences de Vie et de la Terre, l,3), ( SVA334, Écologie et Biologie des Organismes, l,2), ( SVA335, Écologie et Biologie des Organes, l,3)) ; Nous avons entré les attributs fil code, fil intitule, fil parcours et fil annee mais pas l attribut fil id, qui rappelons-le est auto increment et not null. Cela veut dire que le système va attribuer une valeur si elle n est pas fournie, pour la première entrée, ce sera 1, puis cette valeur sera auto-incrémentée pour chaque nouvelle entrée. T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

35 Peuplement de la table filiere fil id fil code fil intitule fil parcours fil annee 1 SVA331 Biochimie et Biologie Moléculaire l 3 2 SVA332 Biologie Cellulaire et Physiologie l 3 3 SVA333 Sciences de la Vie et de la Terre l 3 4 SVA334 Écologie et Biologie des Organismes l 2 5 SVA335 Écologie et Biologie des Organes l 3 Essayons d ajouter une ligne avec une clé primaire déjà attribuée : insert into filiere values(3, SVA331, Filière imaginaire, l,1) ; error 1062 : Duplicate entry 3 for key 1 L entrée 3 ne peut être utilisée deux fois (déjà attribuée). Corrigeons l erreur sur l attribut fil annee correspondant à fil id=4 : update filiere set fil annee=3 where fil id=4 ; Supprimons la ligne superflue correspondant à SVA335 delete from filiere where fil code= SVA335 ; T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

36 Modification de notre table etudiant Nous devons modifier la table etudiant pour lui ajouter un attribut clé primaire, renommer les attributs pour les préfixer avec etu et retirer l attribut filiere pour l instant. drop table etudiant ; create table etudiant( etu id int(5) auto increment not null, etu prenom varchar(30), etu nom varchar(30), etu qualite enum( Melle, Mme, M. ) not null, primary key (etu id)), Nous aurions pu modifier l attribut prenom en etu prenom de la structure de la table etudiant de la façon suivante : alter table etudiant change prenom etu prenom varchar(30) ; Pour plus d information, voir la syntaxe d alter table T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

37 Schéma entités/associations Nous pouvons représenter à présent les deux entités et l association entre ces deux entités : etu_id etu_prenom etu_nom etu_qualite etudiant INT NOT NULL AUTO_INCREMENT VARCHAR(3O) VARCHAR(3O) ENUM ( Melle, Mme, M. ) n 0 inscrit en fil_id fil_code fil_intitule fil_parcours fil_annee filiere INT NOT NULL AUTO_INCREMENT CHAR(6) VARCHAR(4O) ENUM ( l, m, d ) INT(1) L association entre les deux entités est indiquée avec sa cardinalité : c est le nombre d une entité qui peut être mis en association avec l autre ; plusieurs étudiants (n du coté de la table etudiant) peuvent être inscrits dans la même filière mais un étudiant ne peut être inscrit dans plusieurs filières... remarquons qu une filière peut ne pas ouvrir par manque d étudiants, donc la cardinalité minimale peut être 0 (du coté de la table filiere)! T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

38 Ajout de la clé étrangère dans la table etudiant Nous allons à présent établir l association 0, n entre les entités étudiant et filière, nous allons pour cela créer dans la table etudiant une référence vers la clé primaire de la table filiere, ce que nous allons appeler une clé étrangère (si la cardinalité de la relation avait été n, n nous aurions dû procéder différemment, comme nous le verrons plus tard) : etu_id etu_fil_id etu_prenom etu_nom etu_qualite etudiant n 0 inscrit en INT NOT NULL AUTO_INCREMENT fil_id INT NOT NULL AUTO_INCREMENT INT NOT NULL fil_code CHAR(6) VARCHAR(3O) fait référence à fil_intitule VARCHAR(4O) VARCHAR(3O) ENUM ( Melle, Mme, M. ) fil_parcours ENUM ( licence, master, doctorat ) INT(1) fil_annee filiere T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

39 Ajout de la clé étrangère dans la table etudiant drop table etudiant ; create table etudiant( etu id int(5) not null auto increment, etu fil id int(3) not null, etu prenom varchar(30), etu nom varchar(30), etu qualite enum( Melle, Mme, M. ) not null, primary key (etu id)), foreign key (etu fil id) references filiere(fil id)) ; le mot clé foreign key indique que cet attribut est la clé primaire d une autre table ; le mot clé references, suivi d un nom de table (ici filiere), va préciser à quelle table appartient la clé étrangère ; le nom d attribut entre parenthèses (ici fil id) indique le nom de la clé primaire tel qu il est connu dans la table l hébergeant. T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

40 Peuplement de la table etudiant insert into etudiant(etu prenom,etu nom,etu qualite,etu fil id) values( Marie, Delabio, Melle, 1), ( Pierre, Delageno, M., 2), ( Isabelle, Delaproteo, Mme, 1) ; select from etudiant ; etu id etu fil id etu prenom etu nom etu qualite 1 1 Marie Delabio Melle 2 2 Pierre Delageno M. 3 1 Isabelle Delaproteo Mme T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

41 Utilisation des deux tables simultanément Nous pouvons à présent utiliser conjointement les tables etudiant et filiere de la façon suivante : select etu prenom,etu nom,etu qualite,fil intitule from etudiant,filiere where etudiant.etu fil id = filiere.fil id ; etu prenom etu nom etu qualite fil intitule Marie Delabio Melle Biochimie et Biologie Moléculaire Pierre Delageno M. Biologie Cellulaire et Physiologie Isabelle Delaproteo Mme Biochimie et Biologie Moléculaire l utilisation conjointe des tables est réalisée par from etudiant,filiere ; l association entre les deux entités est réalisée par la clause where etudiant.etu fil id = filiere.fil id ; qui précise explicitement comment les entrées des deux tables sont mises en correspondance ; T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

42 Utilisation des deux tables simultanément Afficher en ordre alphabétique les prénoms, noms et filières des étudiants : select etu prenom as Prénom, etu nom as Nom, fil intitule as Filière from etudiant,filiere where etudiant.etu fil id = filiere.fil id order by etu prenom ; Prénom Nom Filière Isabelle Delaproteo Biochimie et Biologie Moléculaire Marie Delabio Biochimie et Biologie Moléculaire Pierre Delageno Biologie Cellulaire et Physiologie T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

43 Plan 5 Association 1,n Table filiere Clé primaire Peuplement Nouvelle table etudiant Clé étrangère Requête conjointe 6 Association n, n Table cours Table etu cou Peuplement Requête conjointe T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

44 Création de la table cours Nous allons à présent créer une table cours dans laquelle seront stockées toutes les informations relatives aux cours. Elle contiendra au minimum les attributs suivants : create table filiere( cou id int(3) auto increment not null, cou intitule varchar(40), cou page www varchar(40), primary key (cou id)) ; Nous aurions pu ajouter des attributs supplémentaires comme le semestre, le nombre d heures de cours, TD et TP, mais l enseignant ne peut être ajouté, dans la mesure où plusieurs enseignants peuvent se partager les cours, TD et TP. Il est donc nécessaire de penser entité enseignant. T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

45 Association n, n Nous souhaitons à présent établir l association entre les entités cours et étudiant, les tables correspondantes sont : etu_id etu_fil_id etu_prenom etu_nom etu_qualite etudiant INT NOT NULL AUTO_INCREMENT INT NOT NULL VARCHAR (3O) VARCHAR (3O) ENUM ( Melle, Mme, M. ) n suit n cours cou_id INT NOT NULL AUTO_INCREMENT cou_intitule cou_page_www VARCHAR (4O) VARCHAR (4O) une clé étrangère dans la table etudiant ne pourrait faire référence qu à une seule clé primaire de la table cours alors qu un étudiant peut suivre plusieurs cours ; une clé étrangère dans la table cours ne pourrait faire référence qu à une seule clé primaire de la table etudiant alors qu un cours peut être suivi par plusieurs etudiants ; nous allons utiliser une table supplémentaire qui va faire le relai entre les tables des deux entités, cette table s appelle une table de jointure. T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

46 Association n, n La table que nous allons créer ne va contenir que peu d informations, uniquement celles qui permettent l association : une référence à une entrée de la table etudiant et une entrée de la table cours, nous allons passer de deux entités et d une association n, n entre ces entités à : trois entités (étudiant, cours et étu cou) ; deux associations : une association 1, n entre les entités étudiant et étu cou et une association n, 0 entre les entités étu cou et cours. etudiant etu_id INT NOT NULL AUTO_INCREMENT etu_fil_id INT NOT NULL etu_prenom VARCHAR (3O) etu_nom VARCHAR (3O) etu_qualite ENUM ( Melle, Mme, M. ) 1 n etu_id cou_id etu_cou INT NOT NULL INT NOT NULL n 0 cours cou_id INT NOT NULL AUTO_INCREMENT cou_intitule cou_page_www VARCHAR (4O) VARCHAR (4O) T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

47 Création de la table etu cou Nous allons à présent créer une table etu cou dans laquelle seront stockées les deux clés étrangères : create table etu cou( etu id int(3) not null, cou intitule int(3) not null, foreign key(etu id) references etudiant(etu id), foreign key(cou id) references cours(cou id)) ; Nous allons ajouter par la suite des attributs : les numéros du groupe de TD et de TP par exemple T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

48 Peuplement des tables etudiant et etu cou insert into etudiant(etu prenom,etu nom,etu qualite,etu fil id) values ( Paul, Dutranscripto, M.,3), ( Maxime, Dumetabolo, M.,4) ; insert into etu cou values (1,1),(1,2),(1,3),(2,1),(2,2),(3,1),(4,1),(5,3) ; select from etu cou ; etu id cou id T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

49 Utilisation des deux tables simultanément Nous pouvons à présent utiliser conjointement les tables etudiant et cours de la façon suivante : select fil intitule as Intitulé du cours, etu nom as Nom, etu prenom as Prénom from etudiant,cours,etu cou where etudiant.etu id = etu cou.etu id and etu cou.cou id = cours.cou id order by fil intitule ; Intitulé du cours Nom Prénom Conception et Construction de Bases de Données Paul Dutranscripto Conception et Construction de Bases de Données Marie Delabio Conception et Construction de Bases de Données Pierre Delageno Conception et Construction de Bases de Données Isabelle Delaproteo Programmation en Informatique Marie Delabio Programmation en Informatique Pierre Delageno Unix et langage C Pierre Delageno Unix et langage C Maxime Dumetabolo T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

50 Contenu du cours 7 Architecture trois tiers Aperçu Trois tiers Langages à balises 8 HTML Paragraphes Entêtes Caractères Listes Tableaux image Hyperlien T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

51 Plan 7 Architecture trois tiers Aperçu Trois tiers Langages à balises 8 HTML Paragraphes Entêtes Caractères Listes Tableaux image Hyperlien T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

52 Architecture trois tiers : HTML, PHP/Python/Perl (ou autre) et MySQL client (ordinateur personnel) Navigateur web Envoi de la page web de résultat Réseau Demande de la page web HTML Programme PHP, Python, Perl Page web de saisie Page web de résultat Récupération des paramètres Construction de la requête SQL Récupération du résultat de la requête SQL Construction de la page web de résultat Envoi de la requête SQL Réseau Envoi du résultat de la requête SQL Récupération de la requête SQL Exécution de la requête SQL Base de Données Résultat de la requête SQL serveur web serveur SGBD T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

53 Les trois tiers 1 HTML Hyper Text Markup Language Le langage HTML est un langage à balise utilisé pour la présentation des pages web, la construction des formulaires à partir desquels seront transmises les données. 2 PHP PHP Hypertext Preprocessor Le langage PHP est utilisé pour récupérer les données transmises à partir du formulaire, construire la requête SQL, la transmettre au serveur. Il permet également de récupérer le résultat de la requête, une fois effectuée par le SGBD, puis de construire la page HTML présentant les résultats. 3 SGBD Système de Gestion de Bases de Données Le langage MySQL (dans notre cas) est utilisé pour exécuter la requête, le serveur retourne alors au programme appelant le résultat de la requête. T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

54 D autres possibilités? PHP n est pas le seul langage permettant de faire le lien entre la page web et le SGBD : Python est une alternative extrémement intéressante, c est un langage facile à apprendre, puissant et extensible : il dispose d un module permettant l interrogation d un SGBD distant (il est étudié en deuxième année de licence du parcours Biologie) ; Perl est très utilisé, il dispose d un ensemble de modules pour l interrogation d un SGBD distant et la construction de pages HTML ; ces deux langages possédent de nombreuses fonctionnalités pour le traitement de données, des mécanismes souples de gestion de listes, particulièrement utiles pour traiter les résultats d une requête SQL ; plus généralement, les langages qui s appuient sur la CGI (Common Gateway Interface) T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

55 L introduction à MySQL, HTML et PHP MySQL est indispensable (lui ou un autre SGBD) à l interrogation des données contenues dans la base, il a été appris pour pouvoir construire les requêtes qui seront transmises au SGBD. HTML est le langage de présentation des pages web, il faut l apprendre pour pouvoir par la suite afficher sur une page web les résultats des requêtes transmises au serveur. PHP est un langage qui va se glisser dans le code HTML et va permettre l interaction avec le SGBD. Il faut comprendre quelques-uns de ses mécanismes pour permettre la transmission de la requête au SGBD, mais également la construction de la page web de résultats. T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

56 Quelques généralités sur les langages à balises Les langages à balises (ou marqueurs) sont des langages de description structurelle, ils rendent explicite la façon dont le document est construit : <lettre> <entete> <lieu>mont-saint-aignan</lieu> <date>le 31 octobre 2008</date> </entete> <ouverture> Madame, </ouverture> <corps> Je suis très heureux de votre lettre </corps> <fermeture>cordialement,</fermeture> <signature>votre obligé</signature> </lettre> Quelques langages à balises : SGML (Std Generalized Markup Language, depuis les années 1960), XML (extensible Markup Language, 1998), TEXet L A TEX 2ε,... Chaque langage dispose de ses propres balises, ainsi parfois que de mécanismes permettant d en définir de nouvelles. T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

57 Plan 7 Architecture trois tiers Aperçu Trois tiers Langages à balises 8 HTML Paragraphes Entêtes Caractères Listes Tableaux image Hyperlien T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

58 Le langage HTML HTML est utilisé pour décrire les pages web ; développé à la fin des années 1980 par Tim Berners-Lee alors qu il travaillait au CERN pour mettre en commun des documents de travail ; des versions successives, des mécanismes de feuilles de styles,... voici un exemple de code HTML : <html> <head> <title>mon titre</title> </head> <body> <center>mon texte centré</center> </body> </html> T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

59 Le langage HTML : l entête <head>... </head> L entête <head> contient essentiellement les informations relatives à la page : <title>mon titre</title> le titre qui apparaîtra sur la barre de titre ; <meta name=author content="thierry Lecroq"> le nom de l auteur de la page ; eta http-equiv="content-type" content="text/html;charset=iso "> l encodage utilisé (caractères accentués avec par exemple) ; <link rel="stylesheet" href="ficstyle.css"> l utilisation d un fichier de style (fonctionnalité non présentée dans ce cours). T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

60 Le langage HTML : le corps <body>... </body> C est cette partie du fichier HTML qui va être affichée par votre navigateur. Elle contient des balises pour : les paragraphes ; les entêtes (titres) ; les listes ; la construction de tableaux ; la gestion des images ; la création de liens vers d autres documents ; la mise en place de formulaires ;... T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

61 Le balisage HTML : les paragraphes <p> </p> et les ruptures <br/> un paragraphe est balisé par <p>, et est par défaut justifié à gauche ; une rupture de paragraphe (passage à la ligne) est balisé par <br/> ; pour modifier ce comportement, il faut ajouter un attribut à la balise <p> comme ci-dessous : <p>un paragraphe normal sera...</p> <p align="left"> un paragraphe justifié à ga...</p> <p align="center">un paragraphe centré</p> <p align="right">un paragraphe justifié à dr...</p> <p align="justify">un paragraphe totalement...</p> <p> un paragraphe<br/>avec rupture</p> T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

62 Le balisage HTML : les entêtes <h1> </h1> à <h6> </h6> <h1>ent^ete de niveau 1</h1> <h2>ent^ete de niveau 2</h2> <h2 align="center">ent^ete centrée de niveau 2</h2> <h3>ent^ete de niveau 3</h3> <h4>ent^ete de niveau 4</h4> <h4>ent^ete de niveau 4 justifiée à droite</h4> <h5>ent^ete de niveau 5</h5> <h6>ent^ete de niveau 6</h6> T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

63 Le balisage HTML : les caractères et leur mise en forme En HTML, les caractères ne sont pas des balises mais des codes réservés construits en indiquant dans l ordre : l esperluette & ; le caractère ; le modificateur (grave, acute, circ, cedil, uml) ; le point-virgule. Ce sont : code symbole code symbole code symbole é é è è ê ê É É È È Ê Ê ç ç Ç Ç ü ü Les effets sur les caractères sont eux accessibles grâce à des balises : <b>texte1</b> et <i>texte2</i> pour texte1 et texte2 ; <u>texte</u> pour texte en souligné. T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

64 Le balisage HTML : les liste non-ordonnées <ul> <li> </li> </ul> <ul> <li>html</li> <li>php</li> <li>mysql</li> </ul> <ul style="list-style-type: square;"> <li>html</li> <li>php</li> <li>mysql</li> </ul> <ul style="list-style-type: circle;"> <li>html</li> <li>php</li> <li>mysql</li> </ul> T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

65 Le balisage HTML : les liste ordonnées <ol> <li> </li> </ol> <ol> <li>html</li> <li>php</li> <li>mysql</li> </ol> <ol style="list-style-type: lower-roman;"> <li>html</li> <li>php</li> <li>mysql</li> </ol> <ol start="19" style="list-style-type: lower-alpha;"> <li>html</li> <li>php</li> <li>mysql</li> </ol> T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

66 Le balisage HTML : les listes descriptives <dl> <dt></dt> <dd></dd> </dl> <dl> <dt>html </dt> <dd>langage...</dd> <dt>php </dt> <dd>langage...</dd> <dt>mysql</dt> <dd>système...</dd> </dl> <dl> <dd>html</dd> <dd>langage...</dd> <dd>php</dd> <dd>langage...</dd> <dd>mysql</dd> <dd>système...</dd> </dl> T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

67 Le balisage HTML : les tableaux <table> <tr> <td> </td> </tr> </table> <table width="100%" border=1> <tr> <td>haut gauche</td> <td align="left">haut droite</td> </tr> <tr> <td align="center">bas gauche</td> <td align="right">bas droite</td> </tr> </table> <table border=1 ncols=2> <tr> <td colspan=2 align="center">haut</td> </tr> <tr> <td>bas gauche</td> <td>bas droite</td> </tr> </table> <table border=1> <tr> <td rowspan=2 valign="center">gauche</td> <td>haut droite</td> </tr> <tr> <td>bas droite</td> </tr> </table> T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

68 Le balisage HTML : les tableaux <table> <tr> <td> </td> </tr> </table> <table frame="vsides"> <tr> <td rowspan="2" valign="top">gauche</td> <td colspan="2" align="right">haut droite</td> </tr> <tr> <td>bas milieu</td> <td style="background-color: rgb(192, 192, 192);"> bas droite</td> </tr> </table> <table frame="hsides" rules="rows"> <tr> <td rowspan="2" valign="center">gauche</td> <td colspan="2" align="center">haut droite</td> </tr> <tr> <td bgcolor="ff00ff">bas milieu</td> <td>bas droite</td> </tr> </table> <table frame="vsides" rules="cols"> <tr> <td rowspan="2" valign="bottom">gauche</td> <td colspan="2" align="left">haut droite</td> </tr> <tr> <td>bas milieu</td> <td bgcolor="blue">bas droite</td> </tr> </table> T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

69 Le balisage HTML : les tableaux <table> <tr> <td> </td> </tr> </table> <table cellspacing=0 frame="hsides" rules="rows"> <tr bgcolor="lightgrey"> <td>delabio</td><td>marie</td> </tr> <tr> <td>delageno</td><td>pierre</td> </tr> <tr bgcolor="lightgrey"> <td>delaproteo</td><td>isabelle</td> </tr> <tr> <td>dumetabolo</td><td>maxime</td> </tr> </table> <br/> <table border=1> <tr> <td background="chutes_niagara.jpg"> un petit texte pour la<br/> cellule avec image<br/> pas très lisible n est-ce pas?</td> <td>rien d autre</td> </tr> </table> T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

70 Le balisage HTML : l insertion d une image <img src=... /> Une petite image : <img src="chutes_niagara.jpg"/> <br/> Une image étirée en hauteur : <img alt="chutes du Niagara" src="chutes_niagara.jpg" align="middle" height="240" width="120"/> T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

71 Le balisage HTML : l insertion d un hyperlien <a href=... >...</a> <a href="cours/ba_do/index.html"> Lien </a> vers les pages de cours. <br/> Un lien vers <a href="mailto:thierry.lecroq@univ-rouen.fr"> mon mél </a> <br/> Une image avec un lien autour : <a href=" <img src="chutes_niagara.jpg" alt="niagara" height="40"> </a> T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

72 Contenu du cours 9 Formulaires Principe Forme générale Méthodes Les formulaires 10 PHP Introduction Exemples Actions 11 Connexions au SGBD Liste des bases Requête simple Requête améliorée 12 Interrogation de notre base Formulaire action T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

73 Plan 9 Formulaires Principe Forme générale Méthodes Les formulaires 10 PHP Introduction Exemples Actions 11 Connexions au SGBD Liste des bases Requête simple Requête améliorée 12 Interrogation de notre base Formulaire action T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

74 Principe des formulaires client (ordinateur personnel) Envoi de la page web de résultat Navigateur web Réseau HTML Page web de saisie Demande de la page web Programme PHP, Python, Perl Récupération des paramètres La page web est associée à un fichier-action, écrit dans un langage de programmation, qui va traiter les données entrées dans le formulaire web : la page formulaire et le fichieraction sont généralement sur le même serveur (web). Construction de la Page web de résultat page web de résultat serveur web T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

75 Le balisage HTML : les formulaires <form action=... method=... > </form> <form action="..." method="...">... <input type="submit"> </form> <form déclaration du formulaire ; action="..." fichier-action à exécuter après validation du formulaire ; method="..."> méthode de transfert des informations vers le fichier-action ;... suit alors la construction elle-même du formulaire ; <input type="submit">construit le bouton de transfert des informations ; </form> fin du formulaire. Nous allons apprendre à construire divers formulaires et par la suite comprendre comment les fichiers-actions peuvent être construits. T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

76 Les méthodes pour les formulaires la méthode get va transmettre les données au serveur en les ajoutant à la fin de l adresse du fichier-action, après un?, lorsque les données sont peu nombreuses et assez petites en taille : la méthode post va transmettre les données au serveur indépendemment de l adresse du fichier-action, ce lorsque le nombre ou la taille des données transmises entre le formulaire et le fichier-action est importante ; Ces deux méthodes ne sont pas spécifiques à PHP mais sont rattachées à la partie CGI (Common Gateway Interface). T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

77 Formulaire contenant une entrée texte simple : <input type= text > Formulaire avec l entrée text<br/> <form action="action_input_text.php" method="get"> Entrer votre nom : <input type="text" name="nom"/> <br/> <input type="submit" value="entrer"/> </form> le nom du fichier-action est action_input_text.php la méthode est get, très peu d informations sont transmises le formulaire contient une entrée de type text, appelé nom le formulaire contient un bouton cliquable (submit), sur lequel sera affiché Entrer. C est ce bouton qui permettra la transmission des informations au fichier-action T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

78 Formulaire contenant des boutons sélectionnables : <input type= radio > Formulaire avec l entrée radio<br/> <form action="action_input_radio.php" method="get"> <table border=0> <tr> <td valign="top"> Choisissez une filière : </td> <td> <input type="radio" name="filiere" value="sva331" checked="checked"> SVA321<br/> <input type="radio" name="filiere" value="sva332">sva332<br/> <input type="radio" name="filiere" value="sva333">sva333<br/> <input type="radio" name="filiere" value="sva334">sva334 </td> </tr> <tr> <td> <input type="submit" value="entrer"/> </td> <td></td> </tr> </table> </form> T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

79 Formulaire contenant des boutons exclusifs : <input type= checkbox > Formulaire avec l entrée checkbox<br/> <form action="action_input_checkbox.php" method="post"> Choisissez quelques cours : <br/> <input type="checkbox" name="cours[]" value="programmation en informatique"> Programmation en informatique<br/> <input type="checkbox" name="cours[]" value="bases de donnees"> Bases de données<br/> <input type="checkbox" name="cours[]" value="unix et langage C"> Unix et Langage C<br/> <input type="checkbox" name="cours[]" value="assemblage"> Assemblage<br/> <input type="submit" value="entrer"/> </form> T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

80 Formulaire contenant un menu déroulant : <select> Formulaire avec le menu select<br/> <form action="action_select.php" method="get"> Sélectionner votre couleur préférée :<br/> <select name="couleur"> <option value="bleu"> bleu </option> <option value="rouge"> rouge </option> <option value="jaune"> jaune </option> <option value="vert"> vert </option> <option value="violet"> violet </option> <option value="rose"> rose </option> </select> <input type="submit" value="entrer"/> </form> T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

81 Plan 9 Formulaires Principe Forme générale Méthodes Les formulaires 10 PHP Introduction Exemples Actions 11 Connexions au SGBD Liste des bases Requête simple Requête améliorée 12 Interrogation de notre base Formulaire action T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

82 Qu est-ce que PHP?, pourquoi utiliser ce langage? PHP = (Personal Home Page ou) PHP Hypertext Preprocessor : langage facilitant la génération de code HTML PHP peut aisément : analyser les données transmises depuis un formulaire ; effectuer une requête SQL vers un serveur distant ; mettre en forme la page web présentant le résultat de la requête ; PHP est facile à programmer, il dispose d un grand nombre de modules spécifiques additionnels ; beaucoup de documentations pour PHP/MySQL sont disponibles sur le réseau ; PHP fonctionne indifféremment sur PC (Windows et Linux), Mac (Mac OS X) et stations de travail ; PHP est gratuit, ces codes sources sont disponibles. T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

83 Notre premier programme PHP <html> <head> <title>premier exemple de programme PHP</title> </head> <body> <?php print("nous sommes le ", date("d m Y, H:i"));?> </body> </html> le nom du fichier doit se terminer par.php ; le programme PHP est inséré au milieu du code HTML ; le programme PHP est délimité par <?php et?> ; le caractère ; termine toutes les lignes d instructions ; la commande print va afficher dans cette page HTML l information passée entre parenthèses, ici Nous sommes le " suivi de la commande date, avec un format particulier (d : jour, m : mois, Y : année avec 4 chiffres, H : heure sur 24 h et i : minutes). T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

84 Notre deuxième programme PHP <html> <head> <title>deuxième exemple de programme PHP</title> </head> <body> <center> <?php $texte = "marie delabio"; print(strtoupper($texte));?> </center> </body> </html> ici, la valeur de la variable texte est donnée de façon explicite ; une fonction, strtoupper transformant toutes les minuscules d une chaîne de caractères en majuscules, est utilisée ; T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

85 Exemple de fichier-action pour l entrée texte <html> <head> <title>action pour l entrée texte</title> </head> <body> <?php $nom = $_GET[ nom ] ; print("vous vous appelez : $nom");?> </body> </html> $nom = $_GET[ nom ] permet de récupérer la valeur nom transmise en mode get ; T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

86 Exemple de fichier-action pour l entrée radio <html> <head> <title>action pour l entrée radio</title> </head> <body> <?php $filiere = $_GET[ filiere ] ; print("vous avez sélectionné la filière suivante : $filiere");?> </body> </html> $filiere = $_GET[ filiere ] permet de récupérer la valeur filiere transmise en mode get ; T. Lecroq (Université de Rouen) Conception et Création de BD Année / 99

Olivier Mondet http://unidentified-one.net

Olivier 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étail

Bases de données relationnelles

Bases 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étail

CREATION WEB DYNAMIQUE

CREATION 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étail

Pratique et administration des systèmes

Pratique 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étail

COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2

COMMANDES 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étail

PHP 5. La base de données MySql. A. Belaïd 1

PHP 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étail

Création et Gestion des tables

Cré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étail

SQL Historique 1982 1986 1992

SQL 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étail

Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP

Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP Au cours de ce TP, vous allez voir comment PHP permet aux utilisateurs, une interaction avec

Plus en détail

Pour les débutants. langage de définition des données

Pour 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étail

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

4. 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étail

Le langage SQL (première partie) c Olivier Caron

Le 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étail

Les BASES de DONNEES dans WampServer

Les 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étail

Langage SQL (1) 4 septembre 2007. IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes

Langage 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étail

Module BD et sites WEB

Module BD et sites WEB Module BD et sites WEB Cours 8 Bases de données et Web Anne Doucet Anne.Doucet@lip6.fr 1 Le Web Architecture Architectures Web Client/serveur 3-tiers Serveurs d applications Web et BD Couplage HTML-BD

Plus en détail

DOSSIER 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 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étail

1 Introduction et installation

1 Introduction et installation TP d introduction aux bases de données 1 TP d introduction aux bases de données Le but de ce TP est d apprendre à manipuler des bases de données. Dans le cadre du programme d informatique pour tous, on

Plus en détail

Cours: Administration d'une Base de Données

Cours: 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étail

I. MySQL : Serveur et SGBD

I. 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étail

1/ Présentation de SQL Server :

1/ 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étail

NFA 008. Introduction à NoSQL et MongoDB 25/05/2013

NFA 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étail

Information utiles. cinzia.digiusto@gmail.com. webpage : Google+ : http://www.ibisc.univ-evry.fr/ digiusto/

Information utiles. cinzia.digiusto@gmail.com. webpage : Google+ : http://www.ibisc.univ-evry.fr/ digiusto/ Systèmes de gestion de bases de données Introduction Université d Evry Val d Essonne, IBISC utiles email : cinzia.digiusto@gmail.com webpage : http://www.ibisc.univ-evry.fr/ digiusto/ Google+ : https://plus.google.com/u/0/b/103572780965897723237/

Plus en détail

PHP 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. 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étail

Présentation du module Base de données spatio-temporelles

Présentation du module Base de données spatio-temporelles Présentation du module Base de données spatio-temporelles S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Partie 1 : Notion de bases de données (12,5h ) Enjeux et principes

Plus en détail

1. 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. 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étail

clef primaire ; clef étrangère ; projection ; restriction ; jointure ; SQL ; SELECT ; FROM ; WHERE

clef primaire ; clef étrangère ; projection ; restriction ; jointure ; SQL ; SELECT ; FROM ; WHERE Cas Neptune hôtel Base de données et langage SQL Propriété Intitulé long Formation concernée Matière Notions Transversalité Présentation Description Neptune Hôtel. L interrogation d une base de données

Plus en détail

PHP 4 PARTIE : BASE DE DONNEES

PHP 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étail

1. LA GESTION DES BASES DE DONNEES RELATIONNELLES

1. LA GESTION DES BASES DE DONNEES RELATIONNELLES Dossier G11 - Interroger une base de données La base de données Facturation contient tout un ensemble d'informations concernant la facturation de la SAFPB (société anonyme de fabrication de produits de

Plus en détail

SGBDR. Systèmes de Gestion de Bases de Données (Relationnelles)

SGBDR. 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étail

Les bases de données

Les 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étail

Le langage SQL pour Oracle - partie 1 : SQL comme LDD

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étail

Dossier I Découverte de Base d Open Office

Dossier I Découverte de Base d Open Office ETUDE D UN SYSTEME DE GESTION DE BASE DE DONNEES RELATIONNELLES Définition : Un SGBD est un logiciel de gestion des données fournissant des méthodes d accès aux informations. Un SGBDR permet de décrire

Plus en détail

Cours Base de données relationnelles. M. Boughanem, IUP STRI

Cours Base de données relationnelles. M. Boughanem, IUP STRI Cours Base de données relationnelles 1 Plan 1. Notions de base 2. Modèle relationnel 3. SQL 2 Notions de base (1) Définition intuitive : une base de données est un ensemble d informations, (fichiers),

Plus en détail

Le Langage De Description De Données(LDD)

Le 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étail

PHP et les Bases de données - Généralités

PHP 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étail

HTML, CSS, JS et CGI. Elanore Elessar Dimar

HTML, CSS, JS et CGI. Elanore Elessar Dimar HTML, CSS, JS et CGI Elanore Elessar Dimar Viamen GPAs Formation, 13 avril 2006 Sommaire Qu est-ce que HTML? HTML : HyperText Marckup Language XML : extensible Marckup Language Qu est-ce que HTML? HTML

Plus en détail

Bases de Données relationnelles et leurs systèmes de Gestion

Bases 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étail

TD HTML AVEC CORRECTION

TD HTML AVEC CORRECTION TD HTML AVEC CORRECTION On utilisera Notepad++ comme éditeur sur Windows Vous créez un répertoire www sous vos répertoires personnels et vous mettrez vos pages dedans. Créez vos fichiers HTML et n oubliez

Plus en détail

CREATION d UN SITE WEB (INTRODUCTION)

CREATION d UN SITE WEB (INTRODUCTION) CREATION d UN SITE WEB (INTRODUCTION) Environnement : World Wide Web : ordinateurs interconnectés pour l échange d informations ( de données) Langages : HTML (HyperText Markup Language) : langages pour

Plus en détail

ISC21-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 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étail

Création de formulaires interactifs

Création de formulaires interactifs SESSION 16 Création de formulaires interactifs Programme de la session Lancer un sondage en utilisant divers éléments d'entrée de formulaire Traiter les entrées utilisateur Activer un script à partir d'un

Plus en détail

Licence 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 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étail

Bases de Données et Internet

Bases de Données et Internet Informatique S6 3A Bases de Données et Internet Python: SGBD et CGI Alexis NEDELEC LISYC EA 3883 UBO-ENIB-ENSIETA Centre Européen de Réalité Virtuelle Ecole Nationale d Ingénieurs de Brest enib c 2008

Plus en détail

Modé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 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étail

Introduction à MySQL (ou MySQL en 3 heures montre en main)

Introduction à 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étail

THEME PROJET D ELABORATION D UNE BASE DE DONNEES SOUS LE SERVEUR MYSQL

THEME PROJET D ELABORATION D UNE BASE DE DONNEES SOUS LE SERVEUR MYSQL . THEME PROJET D ELABORATION D UNE BASE DE DONNEES SOUS LE SERVEUR MYSQL Mr MEZRED MOHAMED Ingénieur météorologue INTRODUCTION Il existe de nombreuses manières de construire une base de données. En effet,

Plus en détail

Tous les autres noms de produits ou appellations sont des marques déposées ou des noms commerciaux appartenant à leurs propriétaires respectifs.

Tous les autres noms de produits ou appellations sont des marques déposées ou des noms commerciaux appartenant à leurs propriétaires respectifs. Connexion à 4D Server depuis une page ASP Par Noreddine MARGOUM, Technicien Contrôle Qualité, 4D S.A. Note technique 4D-200403-08-FR Version 1 Date 1 Mars 2004 Résumé Le propos de cette note technique

Plus en détail

Les bases de données Page 1 / 8

Les bases de données Page 1 / 8 Les bases de données Page 1 / 8 Sommaire 1 Définitions... 1 2 Historique... 2 2.1 L'organisation en fichier... 2 2.2 L'apparition des SGBD... 2 2.3 Les SGBD relationnels... 3 2.4 Les bases de données objet...

Plus en détail

Access et Org.Base : mêmes objectifs? Description du thème : Création de grilles d écran pour une école de conduite.

Access et Org.Base : mêmes objectifs? Description du thème : Création de grilles d écran pour une école de conduite. Access et Org.Base : mêmes objectifs? Description du thème : Création de grilles d écran pour une école de conduite. Mots-clés : Niveau : Bases de données relationnelles, Open Office, champs, relations,

Plus en détail

Bases de données élémentaires Maude Manouvrier

Bases de données élémentaires Maude Manouvrier Licence MI2E- 1ère année Outils en Informatique Bases de données élémentaires Maude Manouvrier Définitions générales et positionnement du cours dans la formation Vocabulaire relatif aux bases de données

Plus en détail

Introduction 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 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étail

Créer le schéma relationnel d une base de données ACCESS

Créer le schéma relationnel d une base de données ACCESS Utilisation du SGBD ACCESS Polycopié réalisé par Chihab Hanachi et Jean-Marc Thévenin Créer le schéma relationnel d une base de données ACCESS GENERALITES SUR ACCESS... 1 A PROPOS DE L UTILISATION D ACCESS...

Plus en détail

Notes de cours : bases de données distribuées et repliquées

Notes 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étail

Mysql avec EasyPhp. 1 er mars 2006

Mysql 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étail

Stockage du fichier dans une table mysql:

Stockage 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étail

Magasins et entrepôts de données (Datamart, data warehouse) Approche relationnelle pour l'analyse des données en ligne (ROLAP)

Magasins et entrepôts de données (Datamart, data warehouse) Approche relationnelle pour l'analyse des données en ligne (ROLAP) Magasins et entrepôts de données (Datamart, data warehouse) Approche relationnelle pour l'analyse des données en ligne (ROLAP) Définition (G. Gardarin) Entrepôt : ensemble de données historisées variant

Plus en détail

Développement d applications Internet et réseaux avec LabVIEW. Alexandre STANURSKI National Instruments France

Développement d applications Internet et réseaux avec LabVIEW. Alexandre STANURSKI National Instruments France Développement d applications Internet et réseaux avec LabVIEW Alexandre STANURSKI National Instruments France Quelles sont les possibilités? Publication de données Génération de rapports et de documents

Plus en détail

Historisation des données

Historisation 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étail

Langage SQL : créer et interroger une base

Langage 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étail

Les sites Internet dynamiques. contact : Patrick VINCENT pvincent@erasme.org

Les sites Internet dynamiques. contact : Patrick VINCENT pvincent@erasme.org Les sites Internet dynamiques contact : Patrick VINCENT pvincent@erasme.org Qu est-ce qu un site Web? ensemble de pages multimédia (texte, images, son, vidéo, ) organisées autour d une page d accueil et

Plus en détail

Bases de Données. Stella MARC-ZWECKER. stella@unistra.u-strasbg.fr. Maître de conférences Dpt. Informatique - UdS

Bases de Données. Stella MARC-ZWECKER. stella@unistra.u-strasbg.fr. Maître de conférences Dpt. Informatique - UdS Bases de Données Stella MARC-ZWECKER Maître de conférences Dpt. Informatique - UdS stella@unistra.u-strasbg.fr 1 Plan du cours 1. Introduction aux BD et aux SGBD Objectifs, fonctionnalités et évolutions

Plus en détail

1. Base de données SQLite

1. 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étail

Jérôme FESSY. IUT de Paris 5. Base de Données. Cours Introductif. Base de Données

Jérôme FESSY. IUT de Paris 5. Base de Données. Cours Introductif. Base de Données Base de Données Cours Introductif Base de Données Quelques chiffres Évolution annuelle moyenne 2004/2000 15% +20% 12% 5% 0.5% 2000 2004 L3G IA SG mono poste : Part de marché 5% 5% 10% Paradox 65% SG 15%

Plus en détail

Architectures web/bases de données

Architectures web/bases de données Architectures web/bases de données I - Page web simple : HTML statique Le code HTML est le langage de base pour concevoir des pages destinées à être publiées sur le réseau Internet ou intranet. Ce n'est

Plus en détail

HMTL. Exemple de fichier HTML. Structure d un document HTML. Exemple de fichier HTML. Balises HTML. IFT1147 Programmation Serveur Web avec PHP

HMTL. Exemple de fichier HTML. Structure d un document HTML. Exemple de fichier HTML. Balises HTML. IFT1147 Programmation Serveur Web avec PHP IFT1147 Programmation Serveur Web avec PHP Un bref survol du langage HTML HMTL HTML: Hypertext Markup Language HTML est essentiellement un langage de description de structure de document (par exemple titre,

Plus en détail

Encryptions, compression et partitionnement des données

Encryptions, 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étail

Programmation Internet Cours 4

Programmation Internet Cours 4 Programmation Internet Cours 4 Kim Nguy ên http://www.lri.fr/~kn 17 octobre 2011 1 / 23 Plan 1. Système d exploitation 2. Réseau et Internet 3. Web 3.1 Internet et ses services 3.1 Fonctionnement du Web

Plus en détail

Programmation Web. Madalina Croitoru IUT Montpellier

Programmation Web. Madalina Croitoru IUT Montpellier Programmation Web Madalina Croitoru IUT Montpellier Organisation du cours 4 semaines 4 ½ h / semaine: 2heures cours 3 ½ heures TP Notation: continue interrogation cours + rendu à la fin de chaque séance

Plus en détail

les techniques d'extraction, les formulaires et intégration dans un site WEB

les techniques d'extraction, les formulaires et intégration dans un site WEB les techniques d'extraction, les formulaires et intégration dans un site WEB Edyta Bellouni MSHS-T, UMS838 Plan L extraction des données pour un site en ligne Architecture et techniques Les différents

Plus en détail

Compte Rendu d intégration d application

Compte 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étail

Bernard Lecomte. Débuter avec HTML

Bernard Lecomte. Débuter avec HTML Bernard Lecomte Débuter avec HTML Débuter avec HTML Ces quelques pages ont pour unique but de vous donner les premiers rudiments de HTML. Quand vous les aurez lues, vous saurez réaliser un site simple.

Plus en détail

Faculté des sciences de gestion et sciences économiques BASE DE DONNEES

Faculté des sciences de gestion et sciences économiques BASE DE DONNEES BASE DE DONNEES La plupart des entreprises possèdent des bases de données informatiques contenant des informations essentielles à leur fonctionnement. Ces informations concernent ses clients, ses produits,

Plus en détail

Formation HTML / CSS. ar dionoea

Formation HTML / CSS. ar dionoea Formation HTML / CSS ar dionoea le HTML Hyper Text Markup Language langage descriptif composé de balises interprété par le navigateur page HTML = simple fichier texte (bloc notes, vim,...) les déclarations

Plus en détail

SQL MAP. Etude d un logiciel SQL Injection

SQL MAP. Etude d un logiciel SQL Injection Introduction Ce TP a pour but d analyser un outil d injection SQL, comprendre les vulnérabilités d une BD et de mettre en œuvre une attaque par injection SQL. Prise en main du logiciel SQLMap est un outil

Plus en détail

Internet. DNS World Wide Web. Divers. Mécanismes de base Exécution d'applications sur le web. Proxy, fire-wall

Internet. DNS World Wide Web. Divers. Mécanismes de base Exécution d'applications sur le web. Proxy, fire-wall Internet DNS World Wide Web Mécanismes de base Exécution d'applications sur le web Divers Proxy, fire-wall 1 Les services usuels de l Internet Services principaux (applications) disponibles sur l Internet

Plus en détail

Objectifs du TP : Initiation à Access

Objectifs 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étail

Systè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 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étail

Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6

Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6 Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6 1 BERNIER François http://astronomie-astrophotographie.fr Table des matières Installation d un serveur HTTP (Hypertext Transfer

Plus en détail

TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012

TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012 TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012 FORMULAIRE DE CONTACT POUR PORTFOLIO PRINCIPE GENERAL Nous souhaitons réaliser un formulaire de contact comprenant les champs suivants : NOM PRENOM ADRESSE MAIL MESSAGE

Plus en détail

Installation d'un serveur FTP géré par une base de données MySQL

Installation 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étail

1 Position du problème

1 Position du problème Licence Science et Technologies - INF245 Examen session 1 - mai 2012 Durée : 2 heures Documents non autorisés Le barème est donné à titre indicatif 1 Position du problème Le Club Universitaire de Vélo

Plus en détail

Table des matières PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS. Introduction

Table des matières PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS. Introduction PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS Depuis SAS 9.2 TS2M3, SAS propose un nouveau langage de programmation permettant de créer et gérer des tables SAS : le DS2 («Data Step 2»). Ces nouveautés

Plus en détail

Initiation à html et à la création d'un site web

Initiation à html et à la création d'un site web Initiation à html et à la création d'un site web Introduction : Concevoir un site web consiste à définir : - l'emplacement où ce site sera hébergé - à qui ce site s'adresse - le design des pages qui le

Plus en détail

PostgreSQL. Formations. Calendrier... 14

PostgreSQL. Formations. Calendrier... 14 Formations PostgreSQL Catalogue 2013 PostgreSQL Administration... 4 PostgreSQL Avancé... 5 PostgreSQL Hot Standby... 6 PostgreSQL Performance... 7 Développer avec PostgreSQL... 8 Migrer d'oracle à PostgreSQL...

Plus en détail

Le Langage SQL version Oracle

Le 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étail

www.evogue.fr SUPPORT DE COURS / PHP PARTIE 3

www.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étail

Mise en œuvre des serveurs d application

Mise en œuvre des serveurs d application Nancy-Université Mise en œuvre des serveurs d application UE 203d Master 1 IST-IE Printemps 2008 Master 1 IST-IE : Mise en œuvre des serveurs d application 1/54 Ces transparents, ainsi que les énoncés

Plus en détail

MODE OPERATOIRE OPENOFFICE BASE

MODE OPERATOIRE OPENOFFICE BASE MODE OPERATOIRE OPENOFFICE BASE Openoffice Base est un SGBDR : Système de Gestion de Base de Données Relationnelle. L un des principaux atouts de ce logiciel est de pouvoir gérer de façon efficace et rapide

Plus en détail

Cours Bases de données

Cours Bases de données Informations sur le cours Cours Bases de données 9 (10) séances de 3h Polycopié (Cours + TD/TP) 3 année (MISI) Antoine Cornuéjols www.lri.fr/~antoine antoine.cornuejols@agroparistech.fr Transparents Disponibles

Plus en détail

Optimisations des SGBDR. Étude de cas : MySQL

Optimisations 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étail

Introduction aux Bases de Données 2004/2005

Introduction aux Bases de Données 2004/2005 Introduction aux Bases de Données 2004/2005 Chapitre 6: Le langage SQL Ecole Nationale Supérieur de Physique de Strasbourg Christian Wolf christian.wolf@ensps.u-strasbg.fr 6.1 Stockage physique Film numfil

Plus en détail

Tutorial sur SQL Server 2000

Tutorial sur SQL Server 2000 Tutorial sur SQL Server 2000 Système d'exploitation est 2000 pro et Serveur 2000 Sommaire 1 - Installation... 2 2 - Mise à jour... 5 3 - Présentation... 7 3-1 - Service Manager (Démarrer/Programmes/Microsoft

Plus en détail

PostgreSQL. Formations. SQL avancé... 10. Calendrier... 18

PostgreSQL. Formations. SQL avancé... 10. Calendrier... 18 Formations PostgreSQL Catalogue 2015 PostgreSQL Administration... 4 PostgreSQL Avancé... 5 PostgreSQL Hot Standby... 6 PostgreSQL Performance... 7 PostgreSQL Sauvegardes... 8 SQL : Conception & Mise en

Plus en détail

TP 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 : 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étail

UNIVERSITE DE CONSTANTINE 1 FACULTE DES SIENCES DE LA TECHNOLOGIE DEPARTEMENT D ELECTRONIQUE 3 ème année LMD ELECTRONIQUE MEDICALE

UNIVERSITE DE CONSTANTINE 1 FACULTE DES SIENCES DE LA TECHNOLOGIE DEPARTEMENT D ELECTRONIQUE 3 ème année LMD ELECTRONIQUE MEDICALE UNIVERSITE DE CONSTANTINE 1 FACULTE DES SIENCES DE LA TECHNOLOGIE DEPARTEMENT D ELECTRONIQUE 3 ème année LMD ELECTRONIQUE MEDICALE TP N 1 : Initiation à L Access I. Introduction Microsoft Access fait partie

Plus en détail