Bases de données Niveau 1 SQL - MySQL MariaDB - Cours et TP 5 DDL et DML

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

Download "Bases de données Niveau 1 SQL - MySQL MariaDB - Cours et TP 5 DDL et DML"

Transcription

1 Bases de données Niveau 1 SQL - MySQL MariaDB - Cours et TP 5 DDL et DML MariaDB : https://mariadb.org/ Site officiel MySQL : Zone pour les développeurs : Téléchargement : Documentations MySQL : Mémo SQL : Bertrand LIAUDET SOMMAIRE SOMMAIRE 1 SQL : CREATION DE LA BASE DE DONNEES. LES TABLES : LE DDL 3 0. Présentation 3 1. Création des tables 4 2 Contrainte d intégrité référentielle : CIR 9 3 Modification des tables 13 4 Suppression des tables Récupération du code sous mysql : show create table Moteur MyISAM et moteur InnoDB 16 SQL : CREATION DE LA BASE DE DONNEES. LES TUPLES : LE DML Création des tuples Modification et suppression des tuples Suppression des tuples Remplacement des tuples 22 TP N 5 : CMS DES TUPLES ET DES TABLES 23 Présentation 23 Exercice 1 : charger les tables de la base de données 23 Exercice 2 : modification et création de la BD 24 Exercice 3 : création de la BD via un SELECT et des ALTER 25 Exercice 4 : Exporter - Importer 25 BASES DE DONNÉES - Niveau 1 - MySQL - MariaDB - Cours 05 - page 1/26 - Bertrand LIAUDET

2 Exercice 5 : passage de InnoDB à MyISAM et retour en InnoDB 26 Première édition : septembre 2007 Deuxième édition : septembre 2008 Troisième édition : septembre 2009 BASES DE DONNÉES - Niveau 1 - MySQL - MariaDB - Cours 05 - page 2/26 - Bertrand LIAUDET

3 SQL : CREATION DE LA BASE DE DONNEES. LES TABLES : LE DDL PRINCIPALES NOTIONS CREATE TABLE INSERT INTO ALTER TABLE UPDATE DROP TABLE DELETE FROM Contraintes d intégrité non référentielles Moteur MyISAM Contraintes d intégrité référentielle Moteur InnoDB Show create table 0. Présentation Les trois opérations fondamentales de «création» au sens large de la base de données sont : la création, la modification et la suppression Ces opérations correspondent au sigle : CMS La CMS s applique aux tables, aux tuples mais aussi aux utilisateurs. CMS des tables : Le DDL : Data Definition Language CREATE TABLE ALTER TABLE DROP TABLE CMS des tuples : Le DML : Data Manipulation Language INSERT INTO UPDATE DELETE FROM REPLACE BASES DE DONNÉES - Niveau 1 - MySQL - MariaDB - Cours 05 - page 3/26 - Bertrand LIAUDET

4 1. Création des tables Une fois le modèle des données réalisé, il reste à créer la base de données. Créer d abord les tables, puis les tuples. Création des tables Syntaxe MySQL Exemple En première approche, la commande a la syntaxe suivante : CREATE table NomTable ( attribut_1 type [contrainte d intégrité], attribut_2 type [contrainte d intégrité],, attribut_n type [contrainte d intégrité], [contrainte d intégrité] ); Les contraintes sont facultatives. L ordre dans la liste est au choix. La table est une coquille vide : c'est une structure. Elle permettra ensuite de créer des tuples. CREATE TABLE DEPT ( ND integer primary key auto_increment, NOM varchar(14) not NULL, VILLE varchar(13) ); CREATE TABLE EMP ( NE integer primary key auto_increment, NOM varchar(10) not NULL, JOB enum ('PRESIDENT','MANAGER', 'SALESMAN', 'CLERK', 'ANALYST'), DATEMB date, SAL float(7,2), COMM float(7,2), ND integer not null, foreign key(nd) references DEPT(ND), NEchef integer, foreign key(nechef) references EMP(NE) ); BASES DE DONNÉES - Niveau 1 - MySQL - MariaDB - Cours 05 - page 4/26 - Bertrand LIAUDET

5 Les types La connaissance des types est plus ou moins spécifique au SGBD avec lequel on travaille. Les types numériques BOOL, BOOLEAN, BIT INT (M), INTEGER (M), TINYINT (M), SMALLINT (M), MEDIUMINT (M), BIGINT (M) FLOAT(precision), FLOAT (M,D), DOUBLE (M,D), DOUBLE PRECISION (M,D), REAL (M,D) avec : M : nb chiffres max, D : nb chiffres après la virgule DECIMAL (M,D), DEC (M,D) avec M : taille de l affichage, D: nombre de décimal, M>=D, si M=D alors 1 < n < 1. Les types date DATE, DATETIME, TIME TIMESTAMP : pour gérer automatiquement la date de création ou de mise à jour. YEAR(2 4) Type chaîne CHAR(M), NCHAR(M), CHARACTER : taille statique, 255 max. VARCHAR(M), NATIONAL VARCHAR(M) : taille dynamique, 2000 max. BLOB, TEXT, TINYBLOB, TINYTEXT, MEDIUMBLOB, MEDIUMTEXT, LONGBLOB, LONGTEXT : taille dynamique, jusqu à 4GO. Type chaine : enum et set ENUM('value1','value2',...) : permet de proposer une liste de valeurs pour l attribut. Remarque : les valeurs proposées seront les seules possibles. L enum se comporte donc comme un «check». SET('value1','value2',...) : zéro, une ou plusieurs valeurs parmi une liste BASES DE DONNÉES - Niveau 1 - MySQL - MariaDB - Cours 05 - page 5/26 - Bertrand LIAUDET

6 Les contraintes d intégrité Notion de contrainte d intégrité Le type Une contrainte d intégrité est un élément de définition des données qui s applique à un attribut et qui fixe une contrainte de valeur pour les données de l attribut. Le type est la première contrainte d intégrité. Selon les SGBD, plus ou moins de vérifications seront effectuées. MySQL est très permissif : les réels sont arrondis en entier si nécessaire, les entier et les réels sont considérés comme des chaînes de caractères si nécessaire. Les chaînes de caractères qui peuvent être lues comme des entiers ou des réels sont considérées comme des entiers ou des réels si nécessaire. Toutefois : Une chaîne de caractère contenant du texte ne peut pas correspondre à un entier ou un réel. Les date doivent avoir le format : yyyy-mm-jj et le nombre de jour et nombre de mois doit être cohérent. Liste des contraintes d intégrité PRIMARY KEY : permet de définir les clés primaires. Cette contrainte garantit le fait que la valeur est différente de NULL et qu elle est unique dans la table. FOREIGN KEY : permet de définir les clés étrangères. Cette contrainte garantit que la valeur fait bien référence à une clé primaire existant dans une autre table. NOT NULL : impose le fait que la valeur de l attribut doit être renseignée. UNIQUE : impose le fait que chaque tuple de la table doit, pour l attribut concerné, avoir une valeur différente de celle des autres ou NULL. DEFAULT : permet de définir une valeur par défaut. ENUM : permet de définir un ensemble de valeurs possible pour l attribut. Cette contrainte garantit le fait que la valeur de l attribut appartiendra à cet ensemble. Le SQL standard propose le mot-clé CHECK qui permet de gérer plus de vérifications sur les valeurs possibles de pour l attribut. Conséquences des contraintes d intégrité PRIMARY KEY, NOT NULL, UNIQUE et CHECK : ces quatre contraintes ont le même type de conséquence : si on cherche à donner une valeur à un attribut qui n est pas conforme à ce qui est précisé dans la définition de l attribut (valeur NULL s il est défini NOT NULL ou PRIMARY KEY, valeur existant déjà s il est défini UNIQUE ou PRIMARY KEY, valeur n appartenant pas au domaine spécifié par le CHECK), alors le SGBD renvoie un message d erreur et ne modifie pas la base de données. Ainsi, un premier niveau de cohérence des données est maintenu. DEFAULT : donne une valeur par défaut si il n y a pas de saisie. FOREIGN KEY : cette contrainte garantit que la valeur fait bien référence à une clé primaire existant dans une autre table. Les conséquences pratiques de cette contraintes seront abordées au prochain chapitre. BASES DE DONNÉES - Niveau 1 - MySQL - MariaDB - Cours 05 - page 6/26 - Bertrand LIAUDET

7 Exemples de code Exemple 1 -- Création de la BD : on supprime la database, on la recrée, on l'utilise drop database if exists empdept; create database empdept; use empdept; -- Création des tables CREATE TABLE DEPT ( ND integer primary key auto_increment, NOM varchar(14) not NULL, VILLE varchar(13) ) ENGINE InnoDB; CREATE TABLE EMP ( NE integer primary key auto_increment, NOM varchar(10) not NULL, JOB varchar(9), DATEMB date, SAL float(7,2), COMM float(7,2), ND integer not null, foreign key(nd) references DEPT(ND), NEchef integer, foreign key(nechef) references EMP(NE) ) ENGINE InnoDB; -- création des tuples INSERT INTO DEPT VALUES (10,'ACCOUNTING','NEW YORK'), (20,'RESEARCH','DALLAS'), (30,'SALES','CHICAGO'), (40,'OPERATIONS','BOSTON') ; INSERT INTO EMP VALUES (7839,'KING','PRESIDENT',' ',5000,NULL,10,NULL); INSERT INTO EMP VALUES (7698,'BLAKE','MANAGER',' ',2850,NULL,30,7839); INSERT INTO EMP VALUES (7782,'CLARK','MANAGER',' ',2450,NULL,10,7839); INSERT INTO EMP VALUES (7566,'JONES','MANAGER',' ',2975,NULL,20,7839); INSERT INTO EMP VALUES (7654,'MARTIN','SALESMAN',' ',1250,1400,30,7698); INSERT INTO EMP VALUES (7499,'ALLEN','SALESMAN',' ',1600,300,30,7698); INSERT INTO EMP VALUES (7844,'TURNER','SALESMAN',' ',1500,0,30,7698); INSERT INTO EMP VALUES (7900,'JAMES','CLERK',' ',950,NULL,30,7698); INSERT INTO EMP VALUES (7521,'WARD','SALESMAN',' ',1250,500,30,7698); INSERT INTO EMP VALUES (7902,'FORD','ANALYST',' ',3000,NULL,20,7566); INSERT INTO EMP VALUES (7369,'SMITH','CLERK',' ',800,NULL,20,7902); INSERT INTO EMP VALUES (7788,'SCOTT','ANALYST',' ',3000,NULL,20,7566); INSERT INTO EMP VALUES (7876,'ADAMS','CLERK',' ',1100,NULL,20,7788); INSERT INTO EMP VALUES (7934,'MILLER','CLERK',' ',1300,NULL,10,7782); Remarques Insert into : on peut faire un insert into par tuple (c est le cas des employés) ou faire un insert into pour tous les tuples (c est le cas des départements). Variante de l exemple 1 BASES DE DONNÉES - Niveau 1 - MySQL - MariaDB - Cours 05 - page 7/26 - Bertrand LIAUDET

8 CREATE TABLE EMP ( NE integer auto_increment, NOM varchar(10), JOB enum ('PRESIDENT','MANAGER', 'SALESMAN', 'CLERK', 'ANALYST'), DATEMB date, SAL float(7,2) check (sal >1000), -- mysql ne gère pas le check! COMM float(7,2) default 100, ND integer not null, NEchef integer, primary key(ne) ) ENGINE InnoDB; CREATE TABLE DEPT ( ND integer auto_increment, NOM varchar(14), VILLE varchar(13), primary key(nd) ) ENGINE InnoDB; ALTER TABLE EMP ADD constraint KEYND foreign key(nd) references DEPT(ND); ALTER TABLE EMP ADD constraint KEYNECHEF foreign key(nechef) references EMP(NE); Remarques JOB enum Check : pas géré par MySQL Defautl : Comm default 100 Les foreign key gérées en altération. De ce fait, on peut créer les tables dans n importe quel ordre. Create table as select On peut créer une table et la remplir à partir d un select : Create table nomtable as select ; Cette table contiendra les attributs et les tuples du select. Elle ne contiendra aucune contraintes d intégrité. Tous les attributs sont à NULL par défaut. Pour y ajouter des contraintes d intégrité, il faudra faire des ALTER TABLE. BASES DE DONNÉES - Niveau 1 - MySQL - MariaDB - Cours 05 - page 8/26 - Bertrand LIAUDET

9 2 Contrainte d intégrité référentielle : CIR Notion de contrainte d intégrité référentielle FOREIGN KEY est une caractéristique pour un attribut qui définit une contrainte d intégrité référentielle. Une CIR garantit que la valeur de l attribut fait bien référence à une clé primaire existant dans une autre table. Une CIR concerne deux attributs (et donc en général deux tables) : Une CIR s applique à un attribut maître : celui qui fait référence à un autre attribut. Une CIR concerne un attribut joint : celui qui est référé par l attribut maître. La présence de CIR à des conséquences : Sur la création, modification, suppression des tables. Sur la création et la modification de tuples propriétaires de la CIR. Sur la modification et la suppression de tuples référés par une CIR. Conséquences de l intégrité référentielle sur les tables Création et modification d une table maître (avec une clé étrangère) La table jointe doit être créée avant la table maître. Exemple : il faut créer la table des départements avant celle des employés car la table des employés fait référence à la table des départements. Suppression d une table jointe (dont la clé primaire est référencée par d autres tables) La table maître doit être supprimée avant la table jointe. Exemple : il faut supprimer la table des employés avant celle des départements car la table aucune table ne fait référence à la table des employés tandis que la table des départements est référencée par la table des employés. Ajout et suppression des CIR indépendamment des tables Pour pouvoir créer les tables dans n importe quel ordre (par ordre alphabétique par exemple), il suffit de créer les CIR après avoir créer les tables (avec un ALTER TABLE). Pour pouvoir supprimer les tables dans n importe quel ordre, il suffit de supprimer les CIR avant de supprimer les tables (avec un ALTER TABLE). Conséquences de l intégrité référentielle sur les tuples Création et modification d un tuple maître (avec une clé étrangère) Le tuple joint doit être créé avant le tuple maître. BASES DE DONNÉES - Niveau 1 - MySQL - MariaDB - Cours 05 - page 9/26 - Bertrand LIAUDET

10 Suppression d un tuple joint (dont la clé primaire est référencée par d autres tuples) Un tuple joint ne peut pas être supprimé. En cas de tentative d une telle suppression, 3 cas peuvent se présenter : Exemple : Soit on interdit la suppression du tuple joint. Il faudra alors commencer par détruire le ou les tuples maîtres correspondant pour pouvoir supprimer le tuple joint. C est la situation par défaut. Soit le système supprime le tuple joint et les tuples maître correspondant : ainsi il n y a plus de tuples maître faisant référence au tuple joint. Dans ce cas on ajoute : ON DELETE CASCADE à la définition de la clé étrangère. ND integer not null, foreign key(nd) references DEPT(ND) on delete cascade Dans notre exemple, cela signifie que si on supprime un département, on supprimera aussi tous les employés du départements ce qui n est certainement pas un bon choix de modélisation! Soit le système supprime le tuple joint et met la clé étrangère correspondante des tuples maîtres à NULL pour qu il n y ait plus de tuples maîtres qui fassent référence au tuple joint. Dans ce cas on ajoute : ON DELETE SET NULL à la définition de la clé étrangère. Exemple : ND integer not null, foreign key(nd) references DEPT(ND) on delete set NULL Dans notre exemple, cela signifie que si on supprime un département, les employés du département auront désormais la valeur NULL comme numéro de département. C est possible à condition que le numéro de département de l employé ne soit pas déclaré NOT NULL. Modification d un tuple joint (dont la clé primaire est référencée par d autres tuples) Un tuple joint ne peut pas être modifié. En cas de tentative d une telle suppression, 2 cas peuvent se présenter : Exemple: Soit on interdit la modification du tuple joint. Il faudra commencer par modifier le ou les tuples maîtres correspondant pour pouvoir modifier le tuple joint. C est la situation par défaut. Soit le système modifie le tuple joint et les tuples maîtres correspondants pour qu ils fassent correctement référence au tuple joint. Dans ce cas on ajoute : ON UPDATE CASCADE à la définition de la clé étrangère. ND integer not null, foreign key(nd) references DEPT(ND) on update cascade Dans notre exemple, cela signifie que si on modifie la clé primaire d un département, on modifiera aussi les numéros de départements des employés de ce département. BASES DE DONNÉES - Niveau 1 - MySQL - MariaDB - Cours 05 - page 10/26 - Bertrand LIAUDET

11 Nommer les contraintes : CONSTRAINT nomcontrainte En SQL standard, on peut nommer toutes les contraintes, ce qui permettra ensuite de désactiver et de réactiver les contraintes en y faisant références par leur nom. Pour cela, il suffit d ajouter «CONSTRAINT nomcontrainte» devant la déclaration de la contrainte. MySQL ne gère que le nom des CIR. Syntaxe SQL Création de CIR dans un CREATE TABLE Syntaxe générale Exemples FOREIGN KEY(nomAttMaître) [CONSTRAINT nomcontrainte] REFERENCES nomtablejointe(nomattjoint) CREATE TABLE EMP ( NE integer primary key auto_increment, ND integer not null, foreign key(nd) references DEPT(ND), NEchef integer, foreign key(nechef) references EMP(NE) ); Ou encore : CREATE TABLE EMP ( NE integer primary key auto_increment, ND integer not null, NEchef integer, constraint KEYND foreign key(nd) references DEPT(ND), foreign key(nechef) references EMP(NE) ); Nom d une CIR : show create table mysql> show create table emp; emp CREATE TABLE `emp` ( `NE` int(11) NOT NULL auto_increment, CONSTRAINT `emp_ibfk_1` FOREIGN KEY (`ND`) REFERENCES `dept` (`ND`), CONSTRAINT `emp_ibfk_2` FOREIGN KEY (`NEchef`) REFERENCES `emp` (`NE`) ) ENGINE=InnoDB AUTO_INCREMENT=7935 DEFAULT CHARSET=latin1 La CIR sur ND est nommée automatiquement : `emp_ibfk_1`. La CIR sur NEchef est nommée automatiquement : `emp_ibfk_2` Création de CIR par un ALTER TABLE CREATE TABLE EMP ( NE integer auto_increment, NEchef integer, primary key(ne) ) ENGINE InnoDB; BASES DE DONNÉES - Niveau 1 - MySQL - MariaDB - Cours 05 - page 11/26 - Bertrand LIAUDET

12 CREATE TABLE DEPT ( ND integer auto_increment, primary key(nd) ) ENGINE InnoDB; ALTER TABLE EMP ADD constraint KEYND foreign key(nd) references DEPT(ND); ALTER TABLE EMP ADD foreign key(nechef) references EMP(NE); Autres possibilités Selon les SGBD, d autres possibilités de définition de contraintes d intégrité seront possibles. Elles sont à analyser au cas par cas en fonction du SGBD sur lequel on travaille. Cependant, les plus importantes ont été abordées. BASES DE DONNÉES - Niveau 1 - MySQL - MariaDB - Cours 05 - page 12/26 - Bertrand LIAUDET

13 3 Modification des tables Modification des attributs Ajouter un ou plusieurs attributs à la table : ALTER TABLE NomTable ADD ( attribut_1 type [contrainte], attribut_2 type [contrainte],, attribut_n type [contrainte] ); Modifier un attribut de la table ALTER TABLE NomTable MODIFY attribut_1 type [contrainte] ; La modification permet d annuler les contraintes de type NOT NULL ou auto_increment. Supprimer un attribut de la table ALTER TABLE NomTable DROP attribut ; Attention La modification et la suppression des attributs doivent être manipulées avec prudence : une table peut contenir des milliers de données. Il ne faut pas les supprimer ou modifier une table sans précaution. Ajout et suppression de contraintes d'intégrité Ajouter une contrainte Exemple ALTER TABLE NomTable ADD [ CONSTRAINT nomcontrainte] Contrainte ; ALTER TABLE emp ADD CONSTRAINT keynd FOREIGN KEY(ND) REFERENCES DEPT(ND); Suppression d une contrainte nommée ALTER TABLE emp ADD foreign key(nd) references DEPT(ND); ALTER TABLE NomTable DROP type de contrainte nom_de_contrainte; BASES DE DONNÉES - Niveau 1 - MySQL - MariaDB - Cours 05 - page 13/26 - Bertrand LIAUDET

14 Exemple ALTER TABLE emp DROP foreign key KEYND; Récupérer le nom des contraintes : show create table matable Si on n a pas nommé les contraintes à la création, MySQL les nomme automatiquement. Pour récupérer le nom, il faut utiliser la commande Show create table matable On obtient alors le nom de la contrainte derrière le mot clé CONSTRAINT. Suppression de la clé primaire ALTER TABLE NomTable DROP primary key ; On ne peut supprimer la clé primaire que si ce n est pas un auto incrément, et uniquement si elle n est pas référencée par une clé étrangère. 4 Suppression des tables Attention : DROP TABLE NomTable ; La modification et la suppression des tables doit être manipulées avec prudence : une table peut contenir des milliers de données. Il ne faut pas les supprimer ou modifier une table sans précaution. BASES DE DONNÉES - Niveau 1 - MySQL - MariaDB - Cours 05 - page 14/26 - Bertrand LIAUDET

15 5. Récupération du code sous mysql : show create table Show create table La commande show create table nomtable permet de récuperer le code de création d une table. Exemple 1 : mysql> show create table dept; emp CREATE TABLE `dept` ( `ND` int(11) NOT NULL auto_increment, `NOM` varchar(14) default NULL, `VILLE` varchar(13) default NULL, PRIMARY KEY (`ND`) ) ENGINE=InnoDB AUTO_INCREMENT=41 DEFAULT CHARSET=latin1 Remarques 1. le n du prochain ID automatique sera InnoDB est un choix de SGBD. C est celui par défaut. 3. Le code est exploitable directement pour créer une table. Exemple 2 : mysql> show create table emp; emp CREATE TABLE `emp` ( `NE` int(11) NOT NULL auto_increment, `NOM` varchar(10) default NULL, `JOB` varchar(9) default NULL, `DATEMB` date default NULL, `SAL` float(7,2) default NULL, `COMM` float(7,2) default NULL, `ND` int(11) NOT NULL, `NEchef` int(11) default NULL, PRIMARY KEY (`NE`), KEY `ND` (`ND`), KEY `NEchef` (`NEchef`), CONSTRAINT `emp_ibfk_1` FOREIGN KEY (`ND`) REFERENCES `dept` (`ND`), CONSTRAINT `emp_ibfk_2` FOREIGN KEY (`NEchef`) REFERENCES `emp` (`NE`) ) ENGINE=InnoDB AUTO_INCREMENT=7944 DEFAULT CHARSET=latin1 Remarques 1. Le n du prochain ID automatique sera Les clés étrangères sont déclarées en plusieurs étapes : avec KEY et avec CONSTRAINT 3. Le code est exploitable directement pour créer une table. BASES DE DONNÉES - Niveau 1 - MySQL - MariaDB - Cours 05 - page 15/26 - Bertrand LIAUDET

16 Rappels d autres commandes Show databases : lister toutes les databases auxquelles on a accès. Create database nomdatabase : créer une database. Drop database nomdatabase : supprimer une database. Use nomdatabase : utiliser une database. Show tables : lister les tables de la database en cours. Desc nomtable : lister les attributs d une table Show index from nomtable : lister les index d une table Show create table nomtable : afficher le code de creation d une table 6. Moteur MyISAM et moteur InnoDB MyISAM et InnoDB MySQL propose deux type de moteur pour le SGBD : Le moteur MyISAM Le moteur InnoDB Le moteur MyISAM est le moteur par défaut. Il est rapide mais ne gère ni les clés étrangères, ni les transactions. Le moteur InnoDB gère les transactions et les clés étrangères. Quel moteur choisir? Par défaut, il vaut mieux choisir le moteur InnoDB qui prend en compte la norme SQL. Pour améliorer les performance, on peut revenir, si nécessaire au moteur MyISAM. Conclusion : toujours InnoDB!!! Etant donné que les performances sont, dans un premier temps, une question secondaire, et que par contre, on veut absolument apprendre à gérer finement les contraintes de clés étrangères puis les transactions : On utilisera toujours le moteur InnoDB!!! Conséquence syntaxique : ENGINE InnoDB On ajoute : ENGINE InnoDB à la fin de la création de la table : CREATE TABLE DEPT ( ND integer auto_increment, NOM varchar(14), VILLE varchar(13), primary key(nd) ) ENGINE InnoDB; BASES DE DONNÉES - Niveau 1 - MySQL - MariaDB - Cours 05 - page 16/26 - Bertrand LIAUDET

17 Passage d un moteur à l autre On peut modifier le moteur d une table : Passage en MyISAM ALTER TABLE emp TYPE MyISAM ; Pour passer en d InnoDB à MyISAM, il ne doit pas y avoir de clé étrangère. Il faut donc commencer par supprimer les contraintes nommées de clé étrangère. Passage en InnoDB ALTER TABLE emp TYPE InnoDB ; Le passage de MyISAM a InnoDB est possible directement. BASES DE DONNÉES - Niveau 1 - MySQL - MariaDB - Cours 05 - page 17/26 - Bertrand LIAUDET

18 SQL : CREATION DE LA BASE DE DONNEES. LES TUPLES : LE DML 1. Création des tuples Une fois les tables créées, il faut créer les tuples, c est-à-dire les données à proprement parler. Création de tuples Syntaxe MySQL Exemple INSERT INTO NomTable (attribut_1,, attribut_n ) values (valeur_1,, valeur_n ) ; INSERT INTO departements (ND, nom, ville) values (10, 'ADMINISTRATION', 'PARIS') ; ou encore, sans préciser la liste des attributs : INSERT INTO departements values (20, 'VENTES', 'PARIS') ; ou encore, en série : INSERT INTO departements values (20, 'VENTES', 'PARIS'), (10, 'ADMIN', 'PARIS') ; ; Utilisation de l auto-incrément Directement INSERT INTO departements (nom, ville) values ('VENTES', 'PARIS'); Dans ce cas, il faut préciser la liste des attributs qu on veut affecter sans préciser le nom de l attribut clé, et ne pas mettre de valeur pour l attribut clé. Au minimum, on écrira donc : INSERT INTO departements ( ) values ( ); En passant une valeur NULL En passant une valeur NULL ou, on fait jouer l auto-incrément : INSERT INTO departements values (NULL, 'VENTES', 'PARIS'); BASES DE DONNÉES - Niveau 1 - MySQL - MariaDB - Cours 05 - page 18/26 - Bertrand LIAUDET

19 Ou bien INSERT INTO departements values ('', 'VENTES', 'PARIS'); Gestion des clés étrangères : la fonction last_insert_id() La fonction last_insert_id() permet de récupérer le dernier numéro de clé primaire donnée. C est utile pour faire un lien sur une clé étrangère : INSERT INTO employes values (NULL, 'DURAND', 'ANALYST', ' ', 2000, NULL, last_insert_id(),7839); Cette instruction permet de créer l employé DURAND et de l affecter dans le département qu on vient de créer précédemment. A noter que la fonction «last_insert_id()» est gérée au niveau de chaque client. Création de tuples en série On peut insérer dans une table des tuples résultant de l interrogation de la base de données elle-même. INSERT INTO NomTable ( liste d'attributs ) SELECT liste d'attributs from ; Les tuples de la table résultant du select sont créés dans la table de l'insert. Attention : La table résultant du select doit avoir le même schéma que celle dans laquelle les tuples sont insérés. Exporter les données A partir de mysql Production d un fichier «csv» exploitable sous Excel. Chemin absolu mysql> SELECT * INTO OUTFILE c:/dept.csv fields terminated by, FROM dept; Chemin relatif : DATADIR mysql> SELECT * INTO OUTFILE./dept.csv fields terminated by, FROM dept; BASES DE DONNÉES - Niveau 1 - MySQL - MariaDB - Cours 05 - page 19/26 - Bertrand LIAUDET

20 Chemin relatif : DATADIR / BDused mysql> SELECT * INTO OUTFILE dept.csv fields terminated by, FROM dept; A partir du SE C: \ > mysql dbname u user p >output.tab On passe en mode batch, l affichage est redirigé dans le fichier output.tab Ou bien C: \ > mysql dbname u user p pager=cat>output.tab Remarque : output.tab est écrasé au début de l opération, mais toutes les commandes de la même session sont executées à la suite Autre usage : C: \ > mysql dbname u user p < fichier.sql > output.tab Importer les données On peut importer des données en précisant le format de séparation des champs. Par exemple: les fichiers csv produit par Excel utilisent la virgule comme séparateur. Attention : La table correspondant au fichier importé doit avoir le même schéma que celle dans laquelle les tuples sont insérés. Chemin absolu mysql> LOAD DATA INFILE c:/dept.csv INTO TABLE dept fields terminated by, ; Chemin relatif : DATADIR mysql> LOAD DATA INFILE./dept.csv INTO TABLE dept fields terminated by, ; Chemin relatif : DATADIR / BDused mysql> LOAD DATA INFILE dept.csv INTO TABLE dept fields terminated by, ; Chemin relatif : DATADIR / BD au choix mysql> LOAD DATA INFILE./empdept/dept.csv INTO TABLE dept fields terminated by, ; BASES DE DONNÉES - Niveau 1 - MySQL - MariaDB - Cours 05 - page 20/26 - Bertrand LIAUDET

21 2. Modification et suppression des tuples Modification de toute la colonne On peut modifier la valeur d un attribut d un tuple : UPDATE NomTable SET attribut = expression ; L expression peut être une valeur constante, ou une valeur calculée à partir d un élément de la BD : soit directement un attribut, soit le résultat d un select (qui devra donc avoir comme résultat une valeur atomique). Attention : La modification est effectuée pour tous les tuples. Modification de certains tuples dans la colonne On peut sélectionner certains tuples en ajoutant la clause where : UPDATE NomTable SET attribut_1 = expression ou ( SELECT ) WHERE condition ; Remarque Le Select dans le Set ne doit pas faire référence à la table de l update. Modification de plusieurs attributs à la fois La syntaxe générale est la suivante : UPDATE NomTable SET attribut_1 = expression ou ( SELECT ), attribut_n = expression_n ou ( SELECT ) WHERE condition; Exemple UPDATE emp SET salaire = salaire * 1,1 WHERE job = Manager ; BASES DE DONNÉES - Niveau 1 - MySQL - MariaDB - Cours 05 - page 21/26 - Bertrand LIAUDET

22 3. Suppression des tuples On peut supprimer des tuples en précisant lesquels par la clause where : DELETE FROM NomTable WHERE condition ; Attention!!! La suppression des tuples doit être manipulée avec prudence : il est possible de détruire tous les tuples d'une table en une seule commande. Il n y a pas de possibilité de retour en arrière (le ROLLBACK ne sert que dans une transaction). La seule façon de retrouver des tuples détruits par erreur sera de revenir à la dernière sauvegarde ce qui risque d être pénalisant ou de passer par les fichiers de journaux. 4. Remplacement des tuples Remplacer un tuple est équivalent à le supprimer (DELETE) et le créer à nouveau (INSERT INTO). 4 cas de figure 1. Si la clé primaire est dans le SET et que la valeur de la clé primaire existe déjà, alors il y aura effectivement remplacement des autres attributs (DELETE + INSERT) avec les valeurs précisées dans le SET. Les attributs non spécifiés dans le SET passent à NULL. 2. Si la clé primaire est dans le SET et que la valeur de la clé primaire n existe pas déjà, alors il y création d un nouveau tuple (INSERT) avec les valeurs précisées dans le SET. Les attributs non spécifiés dans le SET sont à NULL. 3. Si la clé primaire n est pas dans le SET et qu il y a un auto-incrément, alors il y création d un nouveau tuple (INSERT) avec les valeurs précisées dans le SET. Les attributs non spécifiés dans le SET sont à NULL. 4. Si la clé primaire n est pas dans le SET et qu il n y a pas d auto-incrément, alors la commande génère une ERREUR. Syntaxe La syntaxe du REPLACE est celle de l UPDATE mais sans clause WHERE. REPLACE FROM NomTable SET attribut_1 = expression ou ( SELECT ), attribut_n = expression_n ou ( SELECT ) ; BASES DE DONNÉES - Niveau 1 - MySQL - MariaDB - Cours 05 - page 22/26 - Bertrand LIAUDET

23 TP N 5 : CMS DES TUPLES ET DES TABLES Présentation L exercice consiste à écrire des requêtes SQL d interrogation de la BD. On utilise la base des employés. Exercice 1 : charger les tables de la base de données Présentation On travaillera sur les tables suivantes : EMPLOYES(NE, NOM, JOB, DATEMB, SAL, COMM, #ND, *NEchef) NE numéro de l employé. Clé primaire. NOM nom de l employé. JOB intitulé du poste occupé. DATEMB date d embauche. SAL salaire de l employé. COMM commission (part de salaire variable). #ND n du département dans lequel travaille l employé. Clé étrangère. *NEchef n d employé du chef de l employé. Clé étrangère réflexive. DEPARTEMENTS(ND, NOM, VILLE) ND numéro des départements de l entreprise. Clé primaire. NOM nom des départements de l entreprise. VILLE nom des villes où sont situés les départements. Exercice : lancer le script de création de la BD 1. Télécharger le script de création de la BD : EmployesTP05.txt 2. Lancer ce script de création de la BD. 3. Corriger les erreurs dans l ordre : lister toutes les erreurs une par une. Pour corriger les erreurs, il faut les traiter dans l ordre, warnings compris. 4. Enregistrer un script corrigé. BASES DE DONNÉES - Niveau 1 - MySQL - MariaDB - Cours 05 - page 23/26 - Bertrand LIAUDET

24 Exercice 2 : modification et création de la BD Méthode de travail Dans un fichier texte à votre nom+tp05, écrire tous les scripts demandés avec l intitulé des questions. Utilisez un fichier de test pour tester individuellement les questions. Le mieux est de recharger régulièrement une BD propre : le script corrigé du TP05. Les requêtes : CMS (Création Modification Suppression) des tuples 1. Faire une augmentation de salaire de 20% à tous les employés du département 20. Commencer par faire une requête de recherche des tuples concernés. 2. Augmenter la commission de 200 à tous les vendeurs de Chicago. Commencer par faire une requête de recherche des tuples concernés. 2. bis : Augmenter de 10 % tous les subordonnés des employés qui gagnent plus que Essayer de créer l employé Dupond dont le numéro d employé est On n a pas plus d informations le concernant. Quel problème cela pose-t-il? 4. Essayer de créer l employé Dupond dont le numéro d employé est 7839 et qui travaille dans le département 10. Quel problème cela pose-t-il? Comment pouvez-vous le résoudre? 5. Essayer de supprimer le département 10. Quel problème cela pose-t-il? 6. Essayer de supprimer l employé n Quel problème cela pose-t-il? 7. Créer l employé Dupond. Son numéro est le Il est MANAGER. Sa date d embauche est le 1 février Son salaire est Il n a pas de commission. Son supérieur hiérarchique est le Président. Il travaille dans le département 30. Turner (7844) et James (7900) passe sous sa responsabilité. Ecrivez le script de mise à jour de la base de données. Exécuter ce script. 8. Dupond et les employés sous sa responsabilité travaille désormais dans le département 40. Ecrivez le script de mise à jour de la base de données. 9. Blake (7698) démissionne. Tous les employés sous sa responsabilité passent sous celle de Dupond et dans son département. Son département est supprimé. Tous les employés de son département passent dans le département de Dupond. Ecrivez le script de mise à jour de la base de données. Dans le script on commencera par lister tous les subordonnés de Blake et tous les employés de son département. 10. Ajouter un nouveau département. Il est à PARIS. Son nom est «INFO». On souhaite gérer le numéro du département automatiquement. Quel est le numéro de ce nouveau département? BASES DE DONNÉES - Niveau 1 - MySQL - MariaDB - Cours 05 - page 24/26 - Bertrand LIAUDET

25 Exercice 3 : création de la BD via un SELECT et des ALTER Méthode de travail Continuer à écrire les scripts dans le fichier de l exercice précédent. Les requêtes 11. Recharger une BD propre : le script corrigé du TP Dans une nouvelle BD, la BD «exotest», Créer une table «empcomplet» avec tous les tuples qui contiennent tous les employés avec toutes les infos sur leurs départements et sur leur chef.. On n aura par contre pas d information sur le département du chef et sur le chef du chef. 13. Ajouter les contraintes d intégrité. 14. Le département de DALLAS a été déplacé à SAN FRANCISCO. Faites la mise à jour de la BD. 15. BLAKE (7698) s appelle désormais MORTIMER. Changer son nom. 16. Reconstituer les deux tables des employés et des départements. 17. Ajouter les contraintes d intégrité. 18. Supprimer la table «empcomplet» Exercice 4 : Exporter - Importer Méthode de travail Continuer à écrire les scripts dans le fichier de l exercice précédent. Les requêtes 19. Recharger une BD propre : le script corrigé du TP Exporter les données correspondant à la requête : «tous les employés avec leur job, le numéro de leur département et la ville de leur département.» dans un fichier «eox4.csv dont les champs seront séparés par des virgules. Le fichier doit se trouver dans le répertoire des données de la BD. 21. Ouvrer ce fichier avec un éditeur de texte (bloc-note) puis avec un tableur (excel). 22. Créer une nouvelle BD appelée : test. 23. Dans la BD test, créer une table sans tuples dont les champs correspondent aux champs de la requête de l exercice précédent. 24. Importer les données du fichier exo4.csv, en le laissant dans son répertoire, dans la table que vous venez de créer. BASES DE DONNÉES - Niveau 1 - MySQL - MariaDB - Cours 05 - page 25/26 - Bertrand LIAUDET

26 Exercice 5 : passage de InnoDB à MyISAM et retour en InnoDB Méthode de travail Continuer à écrire les scripts dans le fichier de l exercice précédent. Les requêtes 25. Recharger une BD propre : le script corrigé du TP Faites passer dynamiquement (via des ALTER TABLE) la BD empdept créée en InnoDB en MyISAM. Ecrire le script correspondant à toutes les étapes à franchir. 27. Refaire passer la BD en InnoDB et ajouter les clés étrangères. Ecrire le script correspondant. BASES DE DONNÉES - Niveau 1 - MySQL - MariaDB - Cours 05 - page 26/26 - Bertrand LIAUDET

Modification des données stockées dans une base. LIF4 - Initiation aux Bases de données : SQL - 3. Exemple. Insertion. Insertion utilisant une requête

Modification des données stockées dans une base. LIF4 - Initiation aux Bases de données : SQL - 3. Exemple. Insertion. Insertion utilisant une requête Modification des données stockées dans une base LIF4 - Initiation aux Bases de données : SQL - 3 E.Coquery emmanuel.coquery@liris.cnrs.fr http ://liris.cnrs.fr/ ecoquery La modification s effectue par

Plus en détail

UTILISER LE SERVEUR MYSQL...

UTILISER LE SERVEUR MYSQL... MySQL (pour Windows 9x) UTILISER LE SERVEUR MYSQL... 2 LANCER LE SERVEUR MYSQL... 2 ARRETER LE SERVEUR MYSQL... 3 TRAVAIL AVEC LA CONSOLE MYSQL... 3 CREATION / SUPPRESSION D'UN BASE... 3 UTILISER UN BASE...

Plus en détail

FONCTIONS DE TRAITEMENT} COUNT

FONCTIONS DE TRAITEMENT} COUNT Nom Prénom Promotion Date Buhl Damien Année 1 Groupe 2 21 Janvier 2007 CER Prosit n 22 Mots-Clés : - Requête/Langage SQL Le langage SQL (Structured Query Language) est un langage de requêtes, il permet

Plus en détail

Cours 7 : Langage de définition, manipulation et contrôle des données

Cours 7 : Langage de définition, manipulation et contrôle des données Cours 7 : Langage de définition, manipulation et contrôle des données Objets d une base de données Dans un schéma Tables, vues Index, clusters, séquences, synonymes Packages, procédures, fonctions, déclencheurs

Plus en détail

11. MySQL. Cours Web. MySQL. 11. MySQL. 11. MySQL. Structured Query Language. Lionel Seinturier. Université Pierre & Marie Curie

11. MySQL. Cours Web. MySQL. 11. MySQL. 11. MySQL. Structured Query Language. Lionel Seinturier. Université Pierre & Marie Curie Cours Web Lionel Seinturier Université Pierre & Marie Curie Lionel.Seinturier@lip6.fr Structured Query Language Langage de manipulation des données stockées dans une base de données interrogation/insertion/modification/suppression

Plus en détail

Bases de données. Jean-Yves Antoine. VALORIA - Université François Rabelais Jean-Yves.Antoine@univ-tours.fr. L3 S&T mention Informatique

Bases de données. Jean-Yves Antoine. VALORIA - Université François Rabelais Jean-Yves.Antoine@univ-tours.fr. L3 S&T mention Informatique Bases de données Jean-Yves Antoine VALORIA - Université François Rabelais Jean-Yves.Antoine@univ-tours.fr L3 S&T mention Informatique Bases de Données IUP Vannes, UBS J.Y. Antoine 1 Bases de données SGBD

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

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

Chap. 5 : Langage SQL (Structured Query Language) Pr. : Mohamed BASLAM Contact : baslam.med@gmail.com Niveau : S4 BCG Année : 2014/2015 1

Chap. 5 : Langage SQL (Structured Query Language) Pr. : Mohamed BASLAM Contact : baslam.med@gmail.com Niveau : S4 BCG Année : 2014/2015 1 Chap. 5 : Langage SQL (Structured Query Language) Pr. : Mohamed BASLAM Contact : baslam.med@gmail.com Niveau : S4 BCG Année : 2014/2015 1 Plan Généralités Langage de Définition des (LDD) Langage de Manipulation

Plus en détail

TP1 - Corrigé. Manipulations de données

TP1 - Corrigé. Manipulations de données TP1 - Corrigé Manipulations de données 1. Démarrez mysql comme suit : bash$ mysql -h 127.0.0.1 -u user4 -D db_4 p Remarque: le mot de passe est le nom de user. Ici user4 2. Afficher la liste des bases

Plus en détail

1/28. I Utiliser à bon escient les types de données proposés par SQL, ou. Introduction 3/28

1/28. I Utiliser à bon escient les types de données proposés par SQL, ou. Introduction 3/28 Introduction 1/28 2/28 Anne-Cécile Caron Licence MIAGE - BDD 2015-2016 Objectifs Après ce cours, les TD et TP correspondants, vous devez être capables de I Créer des tables à partir d un modèle I Utiliser

Plus en détail

Cours n 6 SQL : Langage de définition des données (LDD)

Cours n 6 SQL : Langage de définition des données (LDD) Cours n 6 SQL : Langage de définition des données (LDD) Chantal Reynaud Université Paris X - Nanterre UFR SEGMI - IUP MIAGE Cours de Systèmes de Gestion de Données Licence MIAGE 2003/2004 1 Plan I. Langage

Plus en détail

Instructions SQL. Première partie : Langage de description et de gestion des données

Instructions SQL. Première partie : Langage de description et de gestion des données Instructions SQL Première partie : Langage de description et de gestion des données Quelques instructions et leur syntaxe 1. Introduction Trois principales catégories d instructions. Instructions de création

Plus en détail

2011 Hakim Benameurlaine 1

2011 Hakim Benameurlaine 1 Table des matières 1 CRÉATION DES OBJETS DE BASES DE DONNÉES... 2 1.1 Architecture d une base de données... 2 1.1.1 Niveau logique... 2 1.1.2 Niveau physique... 3 1.2 Gestion d une base de données... 3

Plus en détail

ORACLE SQL LDD. Langage de définition de données

ORACLE SQL LDD. Langage de définition de données ORACLE SQL LDD Langage de définition de données Le langage SQL (Structured Query Language) SQL a été normalisé par l ANSI puis par l ISO depuis 1986 sous ses différents aspects : LDD : définition des données

Plus en détail

Cours 3 Le langage SQL

Cours 3 Le langage SQL DUT SRC IUT de Marne-la-Vallée 05/02/2014 M2203 Bases de données Cours 3 Le langage SQL Philippe Gambette Sources Cours de Tony Grandame à l'iut de Marne-la-Vallée en 2010-2011 Cours de Mathieu Mangeot,

Plus en détail

2011 Hakim Benameurlaine 1

2011 Hakim Benameurlaine 1 Table des matières 1 PRÉSENTATION DE TSQL... 2 1.1 Historique... 2 1.2 Les différents types d instructions... 2 1.2.1 Langage de Définition des Données... 2 1.2.2 Langage de Manipulation des Données...

Plus en détail

Introduction aux Systemes d Information et aux Bases de Données

Introduction aux Systemes d Information et aux Bases de Données Introduction aux Systemes d Information et aux Bases de Données L2 Informatique Serenella Cerrito Département d Informatique Évry 2014-2015 Quels valeurs peut prendre un attribut? Ici, les types les plus

Plus en détail

Le language SQL (2/2)

Le language SQL (2/2) Les commandes de base sous Unix SQL (Première partie) Walter RUDAMETKIN Bureau F011 Walter.Rudametkin@polytech-lille.fr Création d'une base ([] facultatif) : createdb nombase [ -U comptepostgres ] Destruction

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

Bases de Données Relationnelles. SQL Le langage de définition des données de SQL

Bases de Données Relationnelles. SQL Le langage de définition des données de SQL Bases de Données Relationnelles SQL Le langage de définition des données de SQL Introduction SQL : Structured Query Language SQL est normalisé SQL 2: adopté (SQL 92) SQL 3: adopté (SQL 99) Standard d'accès

Plus en détail

SQL : création et mises-à-jour de schémas et de données

SQL : création et mises-à-jour de schémas et de données SQL : création et mises-à-jour de schémas et de données Commandes de définition de données (DDL) Commandes de mise-à-jour de données (DML) Vues SQL-MAJ, vues-1 / 33 Exemple Définition de la relation

Plus en détail

Définition de contraintes. c Olivier Caron

Définition de contraintes. c Olivier Caron Définition de contraintes 1 Normalisation SQL-92 Les types de contraintes 1 Les types de contraintes Normalisation SQL-92 Les contraintes de domaine définissent les valeurs prises par un attribut. 1 Les

Plus en détail

SQL Description des données : création, insertion, mise à jour. Définition des données. BD4 A.D., S.B., F.C., N. G. de R.

SQL Description des données : création, insertion, mise à jour. Définition des données. BD4 A.D., S.B., F.C., N. G. de R. SQL Description des données : création, insertion, mise à jour BD4 AD, SB, FC, N G de R Licence MIASHS, Master ISIFAR, Paris-Diderot Mars 2015 BD4 (Licence MIASHS, Master ISIFAR, Paris-Diderot) SQL 1/21

Plus en détail

TP Contraintes - Triggers

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

Bases de données Niveau 1 SQL - MySQL MariaDB - Cours et TP 6 Clé primaire concaténée

Bases de données Niveau 1 SQL - MySQL MariaDB - Cours et TP 6 Clé primaire concaténée Bases de données Niveau 1 SQL - MySQL MariaDB - Cours et TP 6 Clé primaire concaténée MariaDB : https://mariadb.org/ Site officiel MySQL : http://www-fr.mysql.com/ Zone pour les développeurs : http://dev.mysql.com/

Plus en détail

TRAVAUX PRATIQUES DE BASES DE DONNEES PARTIE A : CONCEPTION DU MCD ET MLD

TRAVAUX PRATIQUES DE BASES DE DONNEES PARTIE A : CONCEPTION DU MCD ET MLD TRAVAUX PRATIQUES DE BASES DE DONNEES PARTIE A : CONCEPTION DU MCD ET MLD Cette partie est à réaliser sur papier uniquement. Il s agit de réaliser un modèle conceptuel de données (MCD) suivi du modèle

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

Modèle relationnel Création et modification des relations en SQL

Modèle relationnel Création et modification des relations en SQL Modèle relationnel Création et modification des relations en SQL ENT - Clé sql2009 BD - Mírian Halfeld-Ferrari p. 1 Insertion dans une relation Pour insérer un tuple dans une relation: insert into Sailors

Plus en détail

PHP 6. www.fenetresurtoile.com PHP 6. Jean-François Ramiara. FAD Réseau Pyramide 14/01/2013 Toulouse. Copyright J.F. Ramiara Tous droits réservés

PHP 6. www.fenetresurtoile.com PHP 6. Jean-François Ramiara. FAD Réseau Pyramide 14/01/2013 Toulouse. Copyright J.F. Ramiara Tous droits réservés www.fenetresurtoile.com Jean-François Ramiara FAD Réseau Pyramide 14/01/2013 Toulouse 1 www.fenetresurtoile.com Sommaire Introduction Ajout avec SQL Modification avec SQL Suppression avec SQL Mises à jour

Plus en détail

Web dynamique. Techniques, outils, applications. (Partie C)

Web dynamique. Techniques, outils, applications. (Partie C) Web dynamique Techniques, outils, applications (Partie C) Nadir Boussoukaia - 2006 1 SOMMAIRE 1. MySQL et PHP (20 min) 2. SQL (petits rappels) (20 min) 2 MySQL et PHP Synthèse 3 MySQL et PHP SGBD MySQL

Plus en détail

Chapitre V. Les bases de données relationnelles en pratique : Mise en oeuvre et utilisation

Chapitre V. Les bases de données relationnelles en pratique : Mise en oeuvre et utilisation Chapitre V Les bases de données relationnelles en pratique : Mise en oeuvre et utilisation 175 Mise en oeuvre et utilisation d une base de données : points principaux Organisation d un système de gestion

Plus en détail

SQL (Première partie) Walter RUDAMETKIN

SQL (Première partie) Walter RUDAMETKIN SQL (Première partie) Walter RUDAMETKIN Bureau F011 Walter.Rudametkin@polytech-lille.fr Les commandes de base sous Unix Création d'une base ([] facultatif) : createdb nombase [ -U comptepostgres ] Destruction

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

Base de donnée relationnelle. Exemple de table: Film. Exemple de table: Acteur. Exemple de table: Role. Contenu de la table Role

Base de donnée relationnelle. Exemple de table: Film. Exemple de table: Acteur. Exemple de table: Role. Contenu de la table Role IFT7 Programmation Serveur Web avec PHP Introduction à MySQL Base de donnée relationnelle Une base de données relationnelle est composée de plusieurs tables possédant des relations logiques (théorie des

Plus en détail

Chapitre 4 : Le langage SQL

Chapitre 4 : Le langage SQL Chapitre 4 : Le langage SQL Table des matières I) Introduction...2 II) Rappel...2 III) Gestion de la base de données...2 1) Création de la base de données...2 2) Modification de la base de données...2

Plus en détail

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

Pour les débutants. langage de manipulation des données Pour les débutants SQL : langage de manipulation 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

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

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

DUT Génie Biologique Option Bioinformatique. Les bases de données relationnelles. Travaux Pratiques n 4

DUT Génie Biologique Option Bioinformatique. Les bases de données relationnelles. Travaux Pratiques n 4 DUT Génie Biologique Option Bioinformatique Les bases de données relationnelles avec MySQL Éric Pipard Travaux Pratiques n 4 Jointures externes Requêtes internes et externes Vues et transactions Objectifs

Plus en détail

1 Partie A : administration d une base de donnée à travers PhpMyAdmin

1 Partie A : administration d une base de donnée à travers PhpMyAdmin Ce TP se compose en 2 sections : une section de prise en main (sur ordinateur) et une section d exercice (sur papier) concernant l algèbre relationnelle. 1 Partie A : administration d une base de donnée

Plus en détail

SQL SERVER 2008 Le 20/10/2010

SQL SERVER 2008 Le 20/10/2010 Définitions SQL SERVER 2008 Le 20/10/2010 Une base de données est un objet particulièrement difficile à définir puisqu il est abordé en pratique selon différents points de vue : Pour un administrateur,

Plus en détail

I- Présentation générale II-Création d une base III-Remplir une table IV-Requêtes SQL SQLITEMAN KIT DE SURVIE

I- Présentation générale II-Création d une base III-Remplir une table IV-Requêtes SQL SQLITEMAN KIT DE SURVIE SQLITEMAN KIT DE SURVIE SQLITEMAN KIT DE SURVIE I-Présentation générale Fenêtre du «navigateur d objets», qui permet de visualiser ou modifier la structure de la base de données utilisées. Fenêtre de

Plus en détail

AIDE-MÉMOIRE MINIMAL DU LANGAGE SQL DE MYSQL

AIDE-MÉMOIRE MINIMAL DU LANGAGE SQL DE MYSQL AIDE-MÉMOIRE MINIMAL DU LANGAGE SQL DE MYSQL Michel Cartereau, 10 avril 2013 Ce document présente l'essentiel à connaître afin d'utiliser le langage SQL (structured query language) au sein du système de

Plus en détail

SQL : Origines et Evolutions

SQL : Origines et Evolutions SQL : Origines et Evolutions SQL est dérivé de l'algèbre relationnelle et de SEQUEL Il a été intégré à SQL/DS, DB2, puis ORACLE, INGRES, Il existe trois versions normalisées, du simple au complexe : SQL1

Plus en détail

SQL et Bases de données relationnelles. November 26, 2013

SQL et Bases de données relationnelles. November 26, 2013 November 26, 2013 SQL : En tant que langage d interrogation En tant que langage de mise à jour En tant que langage de définition de données Langages de requête Langages qui permettent d interroger la BD

Plus en détail

Le langage SQL. D. Puthier 1 ESIL, 2009. http://tagc.univ-mrs.fr/staff/puthier, puthier@tagc.univ-mrs.fr

Le langage SQL. D. Puthier 1 ESIL, 2009. http://tagc.univ-mrs.fr/staff/puthier, puthier@tagc.univ-mrs.fr D. Puthier 1 1 ERM206/Technologies Avancées pour le Génome et la Clinique, http://tagc.univ-mrs.fr/staff/puthier, puthier@tagc.univ-mrs.fr ESIL, 2009 Base de données Microarrays Suivi des expositions aux

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

MySQL 5. Guide de l'administrateur et du développeur. Michael Kofler. Groupe Eyrolles, 2005 pour l édition française, ISBN : 2-212-11633-0

MySQL 5. Guide de l'administrateur et du développeur. Michael Kofler. Groupe Eyrolles, 2005 pour l édition française, ISBN : 2-212-11633-0 MySQL 5 Guide de l'administrateur et du développeur Michael Kofler Groupe Eyrolles, 2005 pour l édition française, ISBN : 2-212-11633-0 Table des matières Avant-propos..............................................

Plus en détail

Chapitre 7 Le Langage de Définition de Données

Chapitre 7 Le Langage de Définition de Données Chapitre 7 Le Langage de Définition de Données Jusque là, nous avons réalisé toutes les interrogations possibles sur les données, sans pour autant savoir comment gérer leurs structures. Dans ce chapitre,

Plus en détail

Module Com231A - Web et Bases de Données Notion 3 : SQL

Module Com231A - Web et Bases de Données Notion 3 : SQL Module Com231A - Web et Bases de Données Notion 3 : SQL Qu est ce qu une base de données? Introduction Une base de données est un ensemble d au moins un tableau contenant des données. Exemple : une base

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

INSIA - ING 1 Bases de données Piscine MySQL Cours et TP n 09

INSIA - ING 1 Bases de données Piscine MySQL Cours et TP n 09 INSIA - ING 1 Bases de données Piscine MySQL Cours et TP n 09 Notions spécifiques LA BIBLE : MySQL 5.0 Reference Manual http://dev.mysql.com/doc/refman/5.0/fr/index.html Site officiel MySql : http://www-fr.mysql.com/

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

Plan de la scéance. Modélisation et conception de bases de données. Que doit-on concevoir? L3Pro SCT Bases de données et programmation

Plan de la scéance. Modélisation et conception de bases de données. Que doit-on concevoir? L3Pro SCT Bases de données et programmation Modélisation et conception de bases de données L3Pro SCT Bases de données et programmation Mathieu Sassolas IUT de Sénart Fontainebleau Département Informatique Année 2015-2016 Plan de la séance 3 2 /

Plus en détail

1.1/Architecture des SGBD Les architectures physiques de SGBD sont très liées au mode de répartition.

1.1/Architecture des SGBD Les architectures physiques de SGBD sont très liées au mode de répartition. LP Informatique(DA2I), F7 : Administration Système, Réseaux et Base de données 15/11/2007, Enseignant : M. Nakechbnadi, mail : nakech@free.fr Première parie : Administration d une BD Chapitre 1 : Architecture

Plus en détail

TP n o 14 : Bases de données, première partie

TP n o 14 : Bases de données, première partie TP n o 14 : Bases de données, première partie I Introduction Dans ce TP nous allons effectuer des opérations élementaires sur une base de données ne comportant qu une seule table. Lors de la prochaine

Plus en détail

Introduction au langage SQL

Introduction au langage SQL Introduction au langage SQL 1. Description SQL est un acronyme pour Structured Query Language qui a été conçu par IBM, et a succédé au langage SEQUEL. C est maintenant le langage le plus utilisé dans les

Plus en détail

Introduction aux bases de données

Introduction aux bases de données Introduction aux bases de données Cours 3. : Le langage SQL Vincent Martin email : vincent.martin@univ-tln.fr page personnelle : http://lsis.univ-tln.fr/~martin/ Master 1. LLC Université du Sud Toulon

Plus en détail

Faculté I&C, Claude Petitpierre, André Maurer. Bases de données. SQL (Structured Query Language)

Faculté I&C, Claude Petitpierre, André Maurer. Bases de données. SQL (Structured Query Language) Bases de données SQL (Structured Query Language) Une base de données contient des tables idv region cepage annee Lavaux chasselas 2005 Chianti sangiovese 2002 2 Bourgogne pinot noir 2000 Le nom et le type

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

TP3 : Creation de tables 1 seance

TP3 : 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é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

1 introduction : SQL server

1 introduction : SQL server Lycée lissan eddine ibn_elkhatib laayoune SGBDR 1 Pr H.LAARAJ 2015/2016 2 1 introduction : SQL server 1 3 SQL server SQL-Server est un SGBDR Client-Serveur qui utilise TRANSACT-SQL dans ses transactions.

Plus en détail

SQL : le Langage de Définition de Données

SQL : le Langage de Définition de Données Nadi Tomeh Slides par Amélie Gheerbrant SQL SQL permet d interroger et de créer, de modifier et de supprimer des bases de données et des données. SQL query : interrogation de données pas de modification

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

Plan. Bases de données. Cours 1 : Généralités & rappels. But du cours. Organisation du cours. Polytech Paris-Sud. Apprentis 4 ème année

Plan. Bases de données. Cours 1 : Généralités & rappels. But du cours. Organisation du cours. Polytech Paris-Sud. Apprentis 4 ème année Plan Bases de données Polytech Paris-Sud Apprentis 4 ème année Cours 1 : Généralités & rappels 1.1 Avant-propos 1.2 Algèbre relationnelle kn@lri.fr http://www.lri.fr/~kn 2/18 But du cours Organisation

Plus en détail

TP de SQL. Premiers pas. Nom : Contrôle qualité : Observations : BTS IRIS MySQL TP 01. Analyse Codage Validation

TP de SQL. Premiers pas. Nom : Contrôle qualité : Observations : BTS IRIS MySQL TP 01. Analyse Codage Validation Nom : TP de SQL Premiers pas Contrôle qualité : 3 Conception et Analyse Schéma de la base Normalisation (si vue en cours) Non-normalisation (si vue en cours) Analyse Codage Validation 4 - Vérifications

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

Vulnérabilités logicielles Injection SQL

Vulnérabilités logicielles Injection SQL MGR850 Hiver 2014 Vulnérabilités logicielles Injection SQL Hakima Ould-Slimane Chargée de cours École de technologie supérieure (ÉTS) Département de génie électrique 1 Plan SQL Injection SQL Injections

Plus en détail

I) Bases de données et tables :

I) Bases de données et tables : I) Bases de données et tables : Un S.G.B.D. est un outil pour organiser, stocker, modifier, calculer et extraire des infos. Une B.D.R. peut être considérée comme un ensemble de tables à 2 dimensions. Exemple

Plus en détail

Informatique Initiation aux requêtes SQL. Sommaire

Informatique Initiation aux requêtes SQL. Sommaire cterrier.com 1/14 04/03/2008 Informatique Initiation aux requêtes SQL Auteur : C. Terrier ; mailto:webmaster@cterrier.com ; http://www.cterrier.com Utilisation : Reproduction libre pour des formateurs

Plus en détail

FMIN366 CM3 : Charger de gros volumes de données dans une base de données Oracle

FMIN366 CM3 : Charger de gros volumes de données dans une base de données Oracle FMIN366 CM3 : Charger de gros volumes de données dans une base de données Oracle 1. Manipulation de l utilitaire Oracle de chargement de données SQL*Loader Des fichiers de données au format CSV (Comma

Plus en détail

TD 15 ème chapitre Bases de données

TD 15 ème chapitre Bases de données TD 15 ème chapitre Bases de données Nous allons travailler dans un premier temps avec le sgbd SQLite qui, à proprement parler, ne s'installe pas vraiment. Les bases de données SQLite tiennent sur un fichier

Plus en détail

Création de base de données en SQL - exercices dans le cadre du cours à l'ibis. Sébastien Clément, avril 2011

Création de base de données en SQL - exercices dans le cadre du cours à l'ibis. Sébastien Clément, avril 2011 Création de base de données en SQL - exercices dans le cadre du cours à l'ibis. Sébastien Clément, avril 2011 Interface Web PhpPgAdmin: permet de faire des requêtes SQL ( 1 commandes) permet de visualiser

Plus en détail

1.1 Création d'une table : CREATE TABLE

1.1 Création d'une table : CREATE TABLE SQL : LDD et LMD SQL ne se résume pas aux requêtes d'interrogation d'une base. Ce langage permet aussi de : - créer des tables - de modifier la structure de tables existantes - de modifier le contenu des

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

TD2 SQL. 1. À partir des données présentées dans le tableau suivant, proposez les définitions de la table MAINTENANCE

TD2 SQL. 1. À partir des données présentées dans le tableau suivant, proposez les définitions de la table MAINTENANCE Exercice 1 Syntaxe des noms Les noms d objets SQL suivants sont-ils corrects? a. DEPART b. ARRIVÉE c. DATE d. _WIDE_ e. "CREATE" f. #CLIENT g. IBM_db2 h. 5e_avenue TD2 SQL Sont incorrects : b. Le caractère

Plus en détail

Bases de données. Ecole Marocaine des Sciences de l Ingénieur. Yousra Lembachar

Bases de données. Ecole Marocaine des Sciences de l Ingénieur. Yousra Lembachar Bases de données Ecole Marocaine des Sciences de l Ingénieur Yousra Lembachar Rappel Variables dans SQL Les fonctions d agrégation Les opérateurs ensemblistes Les sous-requêtes SELECT Contraintes statiques

Plus en détail

2 ème PARTIE : LE LANGAGE SQL

2 ème PARTIE : LE LANGAGE SQL 2 ème PARTIE : LE LANGAGE SQL PLAN : I. Le langage de manipulation des données II. Le langage de définition des données III. Administration de la base de données IV. Divers (HORS PROGRAMME) Introduction:

Plus en détail

IFT3030 Base de données. Chapitre 6 SQL. Plan du cours

IFT3030 Base de données. Chapitre 6 SQL. Plan du cours IFT3030 Base de données Chapitre 6 SQL Plan du cours Introduction Architecture Modèles de données Modèle relationnel Algèbre relationnelle SQL Conception Fonctions avancées Concepts avancés Modèle des

Plus en détail

TP 1 Bases de Données Prise en main d Oracle L3 Informatique Université d Aix-Marseille

TP 1 Bases de Données Prise en main d Oracle L3 Informatique Université d Aix-Marseille TP 1 Bases de Données Prise en main d Oracle L3 Informatique Université d Aix-Marseille 1 Prise en main de SQLplus Oracle est un SGBD Relationnel muni de nombreuses fonctionnalités (celles classiques des

Plus en détail

Formation PHP/MySQL. Pierre PATTARD. Avril 2005

Formation PHP/MySQL. Pierre PATTARD. Avril 2005 Formation PHP/MySQL Pierre PATTARD Julien BENOIT Avril 2005 Le PHP Langage interprété, côté serveur pages interprétées par le serveur web pas de compilation, code éditable avec un bloc notes. aucune différences

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

Secteur Tertiaire Informatique Filière étude - développement. Accueil. Apprentissage. Période en entreprise. Evaluation.

Secteur Tertiaire Informatique Filière étude - développement. Accueil. Apprentissage. Période en entreprise. Evaluation. Secteur Tertiaire Informatique Filière étude - développement Activité «Développer la persistance des données» PL / SQL: Mise à jour des données Accueil Apprentissage Période en entreprise Evaluation Code

Plus en détail

OI40: bases de données, TP 2

OI40: bases de données, TP 2 OI40: bases de données, TP 2 Frédéric Lassabe October 26, 2010 Ce TP requiert d avoir bien compris le TP précédent. 1 Sujet Lors de ce TP, il sera question d améliorer la base de données du TP précédent.

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

Vocabulaire 1/2. Base de données : collection de données interreliées. SGBD : système de gestion de bases de données.

Vocabulaire 1/2. Base de données : collection de données interreliées. SGBD : système de gestion de bases de données. Bases de données Au menu : Vocabulaire Le modèle relationnel Types de bases de données Implémentation libre : MySQL Le SQL (Simple Query Language) Administration d'un SGBD Sécurité des SGBD Vocabulaire

Plus en détail

II. EXCEL/QUERY ET SQL

II. EXCEL/QUERY ET SQL I. AU TRAVAIL, SQL! 1. Qu est-ce que SQL?... 19 2. SQL est un indépendant... 19 3. Comment est structuré le SQL?... 20 4. Base, table et champ... 21 5. Quelle est la syntaxe générale des instructions SQL?...

Plus en détail

Bases de données et sites WEB

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

Bases de Données. SQL: Définition

Bases de Données. SQL: Définition Université Mohammed V- Agdal Ecole Mohammadia d'ingénieurs Rabat Bases de Données Mr N.EL FADDOULI 2014-2015 SQL: Définition Structured Query Langage(SQL): - Langage g de base dans les SGBD - Langage de

Plus en détail

2.1/ Les privilèges sous oracle

2.1/ Les privilèges sous oracle LP Informatique(DA2I), UF7 : Administration Système, Réseaux et Base de données 13/12/2007, Enseignant : M. Nakechbnadi, mail : nakech@free.fr Première parie : Administration d une BD Chapitre 2 : Transaction,

Plus en détail

Introduction aux bases de données

Introduction aux bases de données 1/73 Introduction aux bases de données Formation continue Idir AIT SADOUNE idir.aitsadoune@supelec.fr École Supérieure d Électricité Département Informatique Gif sur Yvette 2012/2013 2/73 Plan 1 Introduction

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

Cours de Base de Données Cours n.2 Introduction à MySQL/PhPMyAdmin

Cours de Base de Données Cours n.2 Introduction à MySQL/PhPMyAdmin Cours de Base de Données Cours n.2 Introduction à MySQL/PhPMyAdmin Ce cours reprend beaucoup de transparents du cours de Philippe LAHIRE Elisabetta De Maria - edemaria@i3s.unice.fr UFR Sciences et Laboratoire

Plus en détail

SQL Les fondamentaux du langage (2ième édition)

SQL Les fondamentaux du langage (2ième édition) Introduction 1. Un peu d'histoire 11 2. Les normes SQL 12 3. Description rapide du modèle relationnel 14 3.1 Principaux concepts du modèle relationnel 15 3.2 Principales règles 16 4. Les opérateurs en

Plus en détail

SQL Définition des données

SQL Définition des données SQL Définition des données Instructions Définitions (LDD) CREATE, DROP, ALTER Définition des structures 3 principales étapes: 1. Création de la base de donnée 2. Description des schémas de tables (relations)

Plus en détail

Séance de révision et manipulation de l utilitaire SQLLOADER

Séance de révision et manipulation de l utilitaire SQLLOADER Séance de révision et manipulation de l utilitaire SQLLOADER 1. Enoncé La base de données considérée représente les informations relatives à une bibliothèque qui gère le stockage, l indexation et l emprunt

Plus en détail

Cours 2 : SQL Structured Query Language

Cours 2 : SQL Structured Query Language Cours 2 : SQL Structured Query Language SQL Langage permettant de définir, manipuler et contrôler les données d une BD relationnelle Objet d une norme de l Institut National Américain de Normalisation

Plus en détail