Chapitres 1 et 2 Langage d interrogation des donnåes - Partie 1 -

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

Download "Chapitres 1 et 2 Langage d interrogation des donnåes - Partie 1 -"

Transcription

1 Chapitres 1 et 2 Langage d interrogation des donnåes - Partie 1-1. Introduction Les bases de donnåes DÄfinition UtilitÄ SGBD et SGBDR Les contraintes d intägritä Le langage SQL DÅfinition du LID Interrogation simple d une table Projection Restriction de lignes Trier le räsultat d une interrogation Interrogation de plusieurs tables : les jointures Equi-jointure Jointure räflexive ou auto-jointure Jointure externe Jointure externe gauche Jointure externe droite Jointure externe compläte Jointure multi tables Exercices...32 ALSI_IG1_C02 - SQL LID Partie 1 1

2 1. Introduction Toute organisation a besoin d'informations pour coordonner ses actions en vue d'atteindre ses objectifs. Exemples : - Une bibliothäque maintient une liste de membres, de livres, - Une sociçtç maintient des informations sur ses salariçs, ses services... Ces informations sont ÄlaborÄes Ç partir de donnåes qui, pour Étre utilisables aisäment, sont stockåes de faéon structuråe et ordonnåe. Elles peuvent Étre stockäes sur diffärents types de support et format comme : des fiches papiers, des tableaux ÄlaborÄs avec un tableur (tel que Microsoft Excel) ou des bases de donnäes. EMPLOYES matricule NomEmploye fonction DUPOND commercial SERVICE GARDARIN ingänieur MARTIN präsident NumService NomService Lieu DUPONT adminsitratif 10 Recherche Rennes 20 Vente Metz 30 Direction Paris 40 Fabrication Toulon 50 SAV Metz A B C D E Tableau Excel Fiches papier Base de donnåes 2. Les bases de donnåes 2.1. DÅfinition Le terme de base de donnäes (en anglais Ñ DB Ö signifie data base) correspond Ç une entitå dans laquelle il est possible de stocker des donnåes de faéon structuråe et avec le moins de redondance possible (c est-ñ-dire Åviter de retrouver les mömes valeurs dans diffårentes tables). Ces donnäes doivent pouvoir Étre utilisäes par des programmes, par des utilisateurs diffärents. Ainsi, la notion de base de donnäes est gänäralement coupläe Ç celle de räseau, afin de pouvoir mettre en commun ces informations, d'oü le nom de base. On parle gänäralement de systáme d'information pour däsigner toute la structure regroupant les moyens mis en place pour pouvoir partager des donnäes. ALSI_IG1_C02 - SQL LID Partie 1 2

3 2.2. UtilitÅ L utilitå d une base de donnåes est de mettre des donnäes Ç la disposition d'utilisateurs pour une consultation, une saisie ou bien une mise Ç jour, tout en s'assurant des droits accordäs Ç ces derniers. Cela est d'autant plus utile que les donnäes informatiques sont de plus en plus nombreuses. Une base de donnäes peut Étre locale, c'est-ç-dire utilisable sur une machine par un utilisateur, ou bien råpartie, c'est-ç-dire que les informations sont stockäes sur des machines distantes et accessibles par räseau. L'avantage majeur de l'utilisation de bases de donnäes est la possibilitä de pouvoir Étre accädäes par plusieurs utilisateurs simultanäment SGBD et SGBDR Afin de pouvoir contràler les donnäes ainsi que les utilisateurs, un systáme de gestion est näcessaire. La gestion de la base de donnäes se fait grâce Ç un systáme appelä SGBD (systáme de gestion de bases de donnäes) ou en anglais DBMS (Data base management system). Le SGBD est un ensemble de services (applications logicielles) permettant de gärer les bases de donnäes, c'est-ç-dire : permettre l'accás aux donnäes de faäon simple, autoriser un accás aux informations Ç de multiples utilisateurs manipuler les donnäes präsentes dans la base de donnäes (insertion, suppression, modification). Le SGBD assure la cohårence et l'accäs aux informations stockäes dans un modále physique de donnäes particulier : hiärarchique, räseau, relationnel, objet... Exemple IDS est un SGBD de type rçseau qui a ÇtÇ utilisç pour la conquéte spatiale amçricaine (programme Apollo). Il existe diffärents modáles de bases de donnäes : les BD hiärarchiques, les BD räseaux, les BD objets et les BD relationnelles. Un SGBDR (Systáme de Gestion de Base de DonnÄes Relationnel) est un SGBD assurant la cohärence et l'accás aux informations stockäes dans un modäle physique de donnåes de type relationnel Exemple Paradox, MySQL, Oracle, DB2, Ingres, Informix, Sybase, SQL Server... ALSI_IG1_C02 - SQL LID Partie 1 3

4 2.4. Les contraintes d intågritå Ces contraintes, gåråes en tant que såcuritå par les SGBDR, däfinissent les rágles Ç respecter sur les donnäes. Ces rágles permettent de garantir l'intågritå et la cohårence des donnäes. Si l on tente d insärer des donnäes qui ne respectent pas les contraintes d intägritä däfinies, le SGBDR retourne un message d erreur et la mise Ç jour des donnäes est interrompue. On parle alors de violation des contraintes d intågritå. Certaines de ces contraintes sont liäes aux rágles de gestion du systáme d information repräsentä. Par exemple, le stock actuel d un article ne doit pas Étre infärieur Ç son stock de säcuritä. Elles seront däfinies dans le SGBDR Ç l aide de triggers (vous Ätudierez les triggers en 2 áme annäe). D autres contraintes sont liäes au modále relationnel : La contrainte de relation ou contrainte d entitå La contrainte d'entitå pråcise qu il n y a pas de doublon de la clå primaire, que la clå primaire est toujours renseignåe et qu elle ne peut pas changer de valeur au cours du temps Pour chaque tuple d une relation, la valeur de la clå primaire doit Ötre : La contrainte de domaine La contrainte de domaine permet de restreindre l'ensemble des valeurs que peut prendre un attribut dans une relation : Exemple : pour un album, le mçdia est Ñ Audio CD Ö, Ñ DVD Ö, Ñ K7 Ö ou Ñ Vinyle Ö. Cette contrainte est prise en charge par le SGBD par une contrainte de domaine. Il n est pas possible d associer á un album une valeur qui n appartient pas au domaine de dçfinition. ALSI_IG1_C02 - SQL LID Partie 1 4

5 Les contraintes d intågritå råfårentielle (ou de clå ÅtrangÄre) La contrainte d'intågritå råfårentielle indique que la valeur d'un attribut dåfini comme clå ÅtrangÄre doit exister comme valeur de clå primaire d'une autre relation. Une relation peut avoir de aucune Ç plusieurs cläs Ätrangáres. Exemple : SERVICE (numero, nomservice, lieu) numero : clä primaire EMPLOYE (matricule, nomemploye, fonction, dateembauche, salaire, numservice) matricule : clä primaire numservice : clä Ätrangáre en räfärence Ç numero de la relation SERVICE numservice dans la relation EMPLOYE fait rçfçrence á numero de la relation SERVICE. Cela signifie que la valeur de l attribut numservice de la relation EMPLOYE doit prçalablement exister comme valeur de clç primaire d'une ligne de la table SERVICE. Il est nçcessaire de crçer le service avant de crçer l employç rattachç á ce service. La contrainte d intägritä räfärentielle implique que : A NOTER : Certaines clås ÅtrangÄres peuvent Ötre autorisåes Ñ admettre des valeurs NULL. Dans ce cas, la contrainte d'intågritå råfårentielle n'est pas vårifiåe par le SGBDR. ATTENTION, il ne faut pas confondre NULL et chaüne vide (simple quotes)! La chaãne vide est une chaãne ne contenant aucun caractáre. La valeur NULL indique la präsence de donnäes manquantes dans un champ. ALSI_IG1_C02 - SQL LID Partie 1 5

6 Exemple : On prçcise que chaque employä a un et un seul supärieur hiärarchique parmi les autres employçs, sauf pour le dirigeant qui n en a pas. Cette nouvelle dçpendance fonctionnelle (la connaissance du matricule d un salariç dçtermine le matricule unique de son supçrieur hiçrarchique) entraàne la crçation d une clç ÇtrangÄre. SERVICE (numero, nomservice, lieu) numero : clä primaire EMPLOYE (matricule, nomemploye, fonction, dateembauche, salaire, numservice, matrsuperieur) matricule : clä primaire numservice : clä Ätrangáre en räfärence Ç numero de la relation SERVICE matrsuperieur : clå ÅtrangÄre en råfårence Ñ matricule de la relation EMPLOYE A titre indicatif le modále conceptuel Ätait le suivant ALSI_IG1_C02 - SQL LID Partie 1 6

7 Extrait de la table EMPLOYE matricule nom Employe fonction date Embauche salaire numservice matr Superieur DUPONT Commercial 14/04/ GARDARIN IngÄnieur 07/08/ MARTIN PrÄsident 23/05/ NULL DUPOND Adminsitratif 03/05/ DUPOND fait partie du service nâ 30 c'est-á-dire la Direction Extrait de la table SERVICE numero nomservice lieu 10 Recherche Rennes 20 Vente Metz 30 Direction Nancy 40 Fabrication Toulon 50 SAV Metz MARTIN n a pas de supçrieur hiçrarchique Le supçrieur hiçrarchique de DUPOND est le matricule 16712, á savoir MARTIN ConsÅquence : il est important, lorsque l'on cräe une base de donnäes, de bien räflächir si un attribut doit ou non autoriser les valeurs NULL car cela a des consäquences non nägligeables. A noter que la clå primaire d une relation n admet pas de valeur nulle : elle doit toujours Étre renseignäe. ALSI_IG1_C02 - SQL LID Partie 1 7

8 3. Le langage SQL Le modále relationnel, inventä par A.F. Codd (Directeur de recherche du centre IBM de San JosÄ) en 1970 a donnä naissance au langage SQL, normalisä en 1986 par l ANSI (institut amäricain de normalisation) pour donner SQL-86. Depuis, plusieurs versions ont vu le jour : SQL-89, SQL-92 nommäe SQL2, SQL-99 nommäe SQL3, puis SQL:2003 et enfin SQL:2008. Le SQL (Structured Query Language : langage de requéte structurä) est un langage de communication avec les bases de donnäes relationnelles. Il präsente plusieurs subdivisions. Subdivision Sigle Description Langage d interrogation des donnäes (Data Query Language) Langage de manipulation des donnäes (Data Manipulation Language) LID (DQL) LMD (DML) Extraction de donnäes räpondant Ç un besoin däfini Ç l aide de critáres de restriction, d opärations et de tris. Modification du contenu de la base de donnäes : ajout, modification et suppression de donnäes Langage de däfinition des donnäes (Data Definition Language) Langage de contràle des donnäes (Data Controle Language) LDD (DDL) LCD (DCL) Modification de la structure de la base de donnäes : ajout, modification et suppression des tables et de leurs relations (contraintes d intägritä räfärentielles) Acquisition et rävocation des priviláges d accás aux donnäes. Il est possible d inclure des requétes SQL dans un programme Äcrit dans un autre langage (en C# ou en PHP par exemple). ALSI_IG1_C02 - SQL LID Partie 1 8

9 4. DÅfinition du LID Le langage d interrogation des donnäes (LID) permet, comme son nom l indique, d interroger une base de donnäes. Il sert Ç rechercher, extraire, trier, mettre en forme des donnäes et calculer de nouvelles donnäes Ç partir de donnäes existantes. Dans ce cours, nous utiliserons le modále relationnel suivant. ModÄle relationnel SERVICE(numero, nomservice, lieu) numero : clç primaire EMPLOYE (matricule, nomemploye, fonction, dateembauche, salaire, commission, numservice, matrsuperieur) matricule: clç primaire numservice : clç ÇtrangÄre en rçfçrence á numero de la relation SERVICE matrsuperieur : clç ÇtrangÄre en rçfçrence á matricule de la relation EMPLOYE ModÄle physique Employe matricule nomemploye fonction dateembauche salaire commission numservice matrsuperieur matrsuperieur = matricule numservice = numero Service numero numservice lieu Extraits des tables Extrait de la table Employe Extrait de la table Service ALSI_IG1_C02 - SQL LID Partie 1 9

10 Avec le langage SQL, c est la commande SELECT qui constitue le langage d interrogation de la base. Le räsultat d une requéte d interrogation sur des tables est lui-méme une table dont l existence est temporaire (le temps de la requéte). 5. Interrogation simple d une table 5.1. Projection L instruction SELECT permet de däterminer les colonnes Ñ projeter (afficher) Ç partir de tables präcisäes dans la clause FROM. La version la plus simple d une requéte d interrogation est la suivante : SELECT * FROM nom_table * signifie que tous les champs de la table sont projetçs Il est possible de limiter la projection Ç certains champs en präcisant leur nom aprás l instruction SELECT et en les säparant par des virgules. SELECT nom_champ1, nom_champ2, FROM nom_table Exemple 1 : Afficher toutes les informations sur les employås de l entreprise. SELECT * * se rapporte á tous les champs de la table Employe puisque c est la seule table spçcifiçe dans la clause FROM Exemple 2 : Quels sont les diffårents services (nom) de l entreprise et oà sont-ils implantås? SELECT nomservice, lieu FROM Service ALSI_IG1_C02 - SQL LID Partie 1 10

11 Par däfaut, l instruction SELECT est associäe au mot-clä ALL. Ainsi, méme s il n est pas späcifiä, l exäcution correspond Ç SELECT ALL ce qui signifie que tous les enregistrements correspondant Ç la demande seront affichäs, y compris ceux qui sont identiques. Ainsi les deux requétes ci-dessous produisent le méme räsultat : SELECT fonction ou SELECT ALL fonction La clause DISTINCT (Ç späcifier puisqu elle n est pas exäcutäe par däfaut), permet de ne projeter que les enregistrements diffärents. Exemple 3 : Quelles sont les fonctions occupåes dans l entreprise? SELECT DISTINCT fonction Plusieurs employçs pouvant occuper la méme fonction, la clause distinct permet de n afficher qu une seule fois chaque fonction 5.2. Restriction de lignes La clause WHERE permet de späcifier des critáres de restriction. Cette clause est suivie d une condition qui sera ÄvaluÄe pour chaque ligne de la table. Seules les lignes pour lesquelles le räsultat de la condition est VRAI seront projetäes. SELECT * FROM nom_table WHERE condition ALSI_IG1_C02 - SQL LID Partie 1 11

12 Les conditions sont construites Ç partir : d expressions constituäes de noms de champs ou de valeur (de type numärique, texte ou date) et Äventuellement d opärateurs arithmätiques (+, -, /, *) ou de fonctions prädäfinies. d opärateurs de comparaison : =, >, <, >=, <=, <> ou d opärateurs SQL expr BETWEEN val1 AND val2 Renvoie VRAI si la valeur d expr est comprise entre les valeurs de val1 et val2 incluses expr IN (val1, val2,...) expr LIKE unechaine Renvoie VRAI si la valeur d expr est Ägale Ç l une des valeurs de la liste entre parentháses Renvoie VRAI si la valeur d expr est Ägale Ç la valeur de unechaine qui est une chaãne de caractáres pouvant contenir des caractáres jokers (Ñ _ Ö pour un caractáre quelconque, Ñ % Ö pour plusieurs caractáres quelconques) ATTENTION : toute valeur alphanumårique ou de type date doit Ötre placåe entre simples quotes (ex : 'hello') Exemple 4 : Quels sont les noms des salariås qui occupent la fonction de commercial? On ne souhaite des räsultats que sur les seuls employäs dont la fonction est commercial : on effectue une restriction sur les lignes vårifiant la condition fonction = 'commercial' matricule nom Employe fonction date Embauche salaire comm ission num Service matr Superieur GARDARIN IngÄnieur 07/08/ MARTIN PrÄsident 23/05/ NULL DUPOND Administratif 03/05/ BULLE Commercial 03/01/ ANABEL Commercial 16/06/ ROUX Chef de service 30/05/ PAPILOU Commercial 15/10/ JACOBI Chef de service 30/03/ AMIN comptable 15/10/ PERNOT comptable 15/10/ DUPONT Commercial 14/04/ RAMARA Chef de service 18/08/ On veut seulement le nom de ces employäs : donc räalise une projection sur la colonne nomemploye pour les seules lignes sälectionnäes matricule nom Employe fonction date Embauche salaire comm isssion num Service matr Superieur BULLE Commercial 03/01/ ANABEL Commercial 16/06/ DUPONT Commercial 14/04/ PAPILOU Commercial 15/10/ RequÉte permettant d'obtenir les noms des salariäs qui occupent la fonction de commercial : SELECT nomemploye WHERE fonction = 'Commercial' ALSI_IG1_C02 - SQL LID Partie 1 12

13 Exemple 5 : Afficher les noms des salariås embauchås avant 2000 SELECT nomemploye WHERE dateembauche < '01/01/2000' Le critäre "avant 2000" est exprimç sous forme de date (certains SGBDR peuvent coder les dates au format yyyy/mm/jj). Un critäre de restriction de type date est placç entre quotes (apostrophes). matricule nom Employe fonction date Embauche salaire Comm ission num Service matr Superieur GARDARIN IngÄnieur 07/08/ MARTIN PrÄsident 23/05/ NULL DUPOND Administratif 03/05/ BULLE Commercial 03/01/ ANABEL Commercial 16/06/ ROUX Chef de service 30/05/ PAPILOU Commercial 15/10/ JACOBI Chef de service 30/03/ AMIN comptable 15/10/ PERNOT comptable 15/10/ DUPONT Commercial 14/04/ RAMARA Chef de service 18/08/ Projection sur la colonne nomemploye 1. Restriction sur la date d'embauche La restriction peut porter sur un champ calculå (räsultat d'une opäration sur des champs) Exemple 6 : Afficher les noms des salariås dont la råmunåration annuelle brute (salaire et commission) dåpasse matricule Nom Employe Fonction Date Embauche salaire comm ission num Service matr Superieur champ calculå GARDARIN IngÄnieur 07/08/ MARTIN PrÄsident 23/05/ NULL DUPOND Administratif 03/05/ BULLE Commercial 03/01/ ANABEL Commercial 16/06/ ROUX Chef service 30/05/ PAPILOU Commercial 15/10/ JACOBI Chef service 30/03/ AMIN comptable 15/10/ PERNOT comptable 15/10/ DUPONT Commercial 14/04/ RAMARA Chef service 18/08/ Pour chaque ligne de la table, le SGBDR dätermine le champ calculä puis teste la condition. La projection sur les colonnes choisies est ensuite räalisäe. SELECT nomemploye WHERE salaire + commission > ALSI_IG1_C02 - SQL LID Partie 1 13

14 Exemple 7 : Afficher les noms des salariås embauchås en 2004 SELECT nomemploye WHERE dateembauche BETWEEN '01/01/2004' AND '31/12/2004' Ou bien SELECT nomemploye WHERE YEAR(dateEmbauche) = 2004 La fonction prçdçfinie YEAR extrait l'annçe d'une date Notez que la fonction YEAR utilisçe ici est une fonction propre au SGBDR Microsoft SQL Server. Chaque SGBDR propose une bibliothäque de fonctions. Lors de l'çtude de cas, si l'on ne vous propose pas explicitement une fonction dans l'çnoncç il est recommandç d'utiliser la premiäre syntaxe. Exemple 8 : Afficher les noms des salariås dont la commission repråsente plus de la moitiå du salaire SELECT nomemploye WHERE commission > salaire/2 Exemple 9 : Afficher les noms et fonctions des salariås qui sont soit commercial, soit ingånieur SELECT nomemploye, fonction WHERE fonction IN ('commercial', 'ingånieur') Exemple 10 : Afficher les noms des salariås dont le nom commence par M SELECT nomemploye WHERE nomemploye LIKE 'M%' Exemple 11 : Afficher les noms des salariås dont le nom se termine par T SELECT nomemploye WHERE nomemploye LIKE '%T' Exemple 12 : Afficher les noms des salariås dont le nom contient LA SELECT nomemploye WHERE nomemploye LIKE '%LA%' ALSI_IG1_C02 - SQL LID Partie 1 14

15 Exemple 13 : Afficher les noms des salariås et leur råmunåration brute annuelle SELECT nomemploye, salaire+commission Le räsultat de cette requéte n'est pas trás explicite pour celui qui visualise les räsultats. Il est possible de renommer le nom d'une colonne du räsultat d'une requéte en däfinissant un alias Ç l'aide de la clause AS (des guillemets sont näcessaires si l'alias comporte des espaces). SELECT nomemploye, salaire+commission AS "RÅmunÅration brute" Exercice 1 ALSI_IG1_C02 - SQL LID Partie 1 15

16 Par opposition aux conditions simples illusträes präcädemment, il existe des conditions composäes, formäes de plusieurs conditions simples combinäes grâce aux opärateurs logiques : AND (et), OR (l'un ou l'autre ou les deux), XOR (ou exclusif : l'un ou l'autre mais pas les deux). L'opÄrateur NOT placä devant une condition en inverse le sens. L'opÄrateur AND est prioritaire par rapport Ñ l'opårateur OR. Des parentháses peuvent Étre utilisäes pour imposer une prioritä dans l'ävaluation de la condition, ou simplement pour rendre l'expression plus claire. Exemple 14 : Afficher les noms des salariäs du service 30 ayant un salaire annuel d'au moins SELECT nomemploye WHERE numservemploye=30 AND salaire > Exemple 15 : Afficher les noms des salariäs qui sont commercial ou ingänieur, et travaillant dans le service 20. SELECT nomemploye WHERE fonction IN ('commercial', 'ingånieur') AND numservemploye=20 Rappel : une valeur NULL est une valeur non renseignäe (indäfinie) pour un champ oü cela est autorisä. Attention, la valeur NULL est diffärente de la valeur zäro ou d'une chaine vide ('') qui sont des valeurs däfinies. L'opÄrateur IS NULL permet de tester la valeur NULL. expr IS NULL renvoie VRAI si l'expression expr est vide. expr = NULL provoque une erreur de syntaxe Exemple 16 : Afficher les noms des salariås qui n'ont pas de supårieur hiårarchique. SELECT nomemploye WHERE MatrSuperieur IS NULL Exemple 17 : Afficher les noms des salariås qui ont un supårieur hiårarchique. SELECT nomemploye WHERE MatrSuperieur IS NOT NULL Exercice 2 ALSI_IG1_C02 - SQL LID Partie 1 16

17 5.3. Trier le råsultat d une interrogation Les enregistrements projetäs Ç l'aide de l'instruction SELECT ne sont pas triäs par däfaut. On peut späcifier jusqu'ç 16 critáres de tris grâce Ç la clause ORDER BY placäe aprás la clause WHERE. SELECT * FROM nom_table [WHERE condition] ORDER BY nom_champ1 [DESC], nom_champ2 [DESC],... L'ordre des tris a lieu selon l'ordre des champs (ou des alias) späcifiä dans la clause ORDER BY ou selon leur numäro d'ordre dans la clause SELECT. Il est possible de späcifier un tri sur un champ non projetä (absent de la clause SELECT). Pour chaque critáre de tri späcifiä, le tri peut Étre ascendant (ASC par däfaut) ou descendant (DESC Ç späcifier). Si le tri porte sur un attribut contenant des valeurs NULL, ces valeurs sont toujours en töte quel que soit l'ordre du classement (ascendant ou descendant). Exemple 18 : Afficher la liste des salariås (nom, fonction, salaire), classåe par fonction, et pour chaque fonction, par salaire dåcroissant. SELECT nomemploye, fonction, salaire ORDER BY fonction, salaire DESC DESC ne s'applique qu'á salaire. fonction est ASC par dçfaut. Dans la clause ORDER BY on peut Ägalement utiliser le numäro d'ordre du champ dans la liste SELECT ou l'alias Exemple 19 : Afficher la liste des salariås (nom et råmunåration annuelle brute), triåe par råmunåration dåcroissante. Le champ calculç SELECT nomemploye, salaire+commission as RÄmunÄration salaire+commission est le 2Çme de la liste des champs prçcisçs dans le ORDER BY 2 DESC SELECT ou encore SELECT nomemploye, salaire+commission as RÄmunÄration ORDSC On utilise cette fois-ci l'alias pour dçfinir le critäre de tri. Exercice 3 ALSI_IG1_C02 - SQL LID Partie 1 17

18 6. Interrogation de plusieurs tables : les jointures La jointure est une opäration qui permet de combiner des informations venant de plusieurs tables. Il est possible de joindre jusqu'ç 256 tables. Une jointure est obligatoire dás lors que plusieurs tables sont präsentes dans la clause FROM, c'est-ç-dire lorsque les projections, restrictions et/ou critáres de tris concernent les donnäes issues de plusieurs tables. Attention, en l'absence de jointure, le räsultat renvoyä par la requéte correspond au produit cartåsien des enregistrements des deux tables (chaque enregistrement de la premiáre table est associä Ç tous les enregistrements de la seconde table). En effet, dás lors que le SGBDR rencontre plusieurs tables dans une requéte, il räalise un produit cartäsien. Exemple : On lance la requéte suivante : SELECT nomemploye, numservice, SERVICE.* FROM EMPLOYE, SERVICE Cette requéte va retourner toutes les combinaisons possibles : chaque service sera associä Ç l ensemble des employäs. Lorsque plusieurs tables sont utilisäes, il est obligatoire de pråfixer par le nom de la table : - les champs pour lesquels une ambigäitå existe (deux champs portant le méme nom dans deux tables diffärentes) - le caractäre * pour präciser quelle table doit voir tous ses champs projetäs ALSI_IG1_C02 - SQL LID Partie 1 18

19 6.1. Equi-jointure Une Äqui-jointure rapproche deux tables grâce Ç deux champs ayant un méme sens. Il s agit gänäralement de lier la clä primaire d une table avec la clä Ätrangáre qui y fait räfärence dans l autre table. On parle alors de jointure naturelle. La condition de jointure s'exprime Ç l'aide de la clause WHERE (il s'agit bien d'une restriction) Exemple 20 : Afficher le nom des salariås avec leur lieu de travail SELECT nomemploye, lieu, Service WHERE numservice=numero A chaque enregistrement de la table Employe on associe l enregistrement de la table service vçrifiant : numservice=numservemploye Comment fonctionne le SGBDR pour räpondre Ç cette requéte? Il räalise tout d'abord le produit cartåsien des deux tables (il associe chaque ligne de la table EMPLOYE avec chaque ligne de la table SERVICE) matri cule nom Employe fonction table EMPLOYE date Embauche comm salaire ission num Service matr Superieur num ero table SERVICE nomservice GARDARIN IngÄnieur 07/08/ Recherche Rennes MARTIN PrÄsident 23/05/ NULL 10 Recherche Rennes DUPOND Administratif 03/05/ Recherche Rennes BULLE Commercial 03/01/ Recherche Rennes ANABEL Commercial 16/06/ Recherche Rennes ROUX Chef de service 30/05/ Recherche Rennes PAPILOU Commercial 15/10/ Recherche Rennes JACOBI Chef de service 30/03/ Recherche Rennes AMIN comptable 15/10/ Recherche Rennes PERNOT comptable 15/10/ Recherche Rennes DUPONT Commercial 14/04/ Recherche Rennes RAMARA Chef de service 18/08/ Recherche Rennes GARDARIN IngÄnieur 07/08/ Vente Metz MARTIN PrÄsident 23/05/ NULL 20 Vente Metz DUPOND Administratif 03/05/ Vente Metz BULLE Commercial 03/01/ Vente Metz ANABEL Commercial 16/06/ Vente Metz DUPOND Administratif 03/05/ SAV Metz BULLE Commercial 03/01/ SAV Metz ANABEL Commercial 16/06/ SAV Metz ROUX Chef de service 30/05/ SAV Metz PAPILOU Commercial 15/10/ SAV Metz JACOBI Chef de service 30/03/ SAV Metz AMIN comptable 15/10/ SAV Metz PERNOT comptable 15/10/ SAV Metz DUPONT Commercial 14/04/ SAV Metz RAMARA Chef de service 18/08/ SAV Metz lieu ALSI_IG1_C02 - SQL LID Partie 1 19

20 Ensuite il applique la condition de jointure (la restriction) : seules les lignes värifiant numservice=numero sont sälectionnäes matri cule nom Employe fonction table EMPLOYE date Embauche salaire comm ission num Service matr Superieur num ero table SERVICE nomservice lieu GARDARIN IngÄnieur 07/08/ Recherche Rennes MARTIN PrÄsident 23/05/ NULL 30 Direction Nancy DUPOND Administratif 03/05/ Direction Nancy BULLE Commercial 03/01/ Recherche Rennes ANABEL Commercial 16/06/ Vente Metz ROUX Chef de service 30/05/ Vente Metz PAPILOU Commercial 15/10/ Vente Metz JACOBI Chef de service 30/03/ Recherche Rennes AMIN comptable 15/10/ Direction Nancy PERNOT comptable 15/10/ Direction Nancy DUPONT Commercial 14/04/ Vente Metz RAMARA Chef de service 18/08/ Vente Metz Condition de sälection numservice = numero Enfin, il effectue la projection : seules les colonnes nomemploye et lieu sont retenues nomemploye GARDARIN MARTIN DUPOND BULLE ANABEL ROUX PAPILOU JACOBI AMIN PERNOT DUPONT RAMARA lieu Rennes Nancy Nancy Rennes Metz Metz Metz Rennes Nancy Nancy Metz Metz Une autre syntaxe existe pour exprimer la jointure (norme SQL 2): SELECT nomemploye, lieu INNER JOIN Service ON numservice = numero ou encore SELECT nomemploye, lieu JOIN Service ON numservice= numero ALSI_IG1_C02 - SQL LID Partie 1 20

21 Il est possible, bien entendu, d'appliquer des restrictions au räsultat d'une jointure entre tables. Dans ce cas les restrictions sont ajoutäes Ç la clause WHERE, aprás la condition de jointure. Les diffärentes conditions sont säparäes par AND. SELECT liste_des_colonnes FROM table1, table2 WHERE condition_jointure AND condition_restriction AND autre_condition_restriction Exemple 21 : Afficher le nom des salariås embauchås avant 2000 et travaillant Ñ Metz SELECT nomemploye, Service WHERE numservice = numero AND dateembauche < '01/01/2000' AND lieu = 'Metz' Le SGBDR räalise d'abord le produit cartåsien puis applique la condition de jointure matri cule nom Employe fonction date Embauche salaire comm ission num Service matr Superieur num ero nomservice lieu GARDARIN IngÄnieur 07/08/ Recherche Rennes MARTIN PrÄsident 23/05/ NULL 30 Direction Nancy DUPOND Administratif 03/05/ Direction Nancy BULLE Commercial 03/01/ Recherche Rennes ANABEL Commercial 16/06/ Vente Metz ROUX Chef de service 30/05/ Vente Metz PAPILOU Commercial 15/10/ Vente Metz JACOBI Chef de service 30/03/ Recherche Rennes AMIN comptable 15/10/ Direction Nancy PERNOT comptable 15/10/ Direction Nancy DUPONT Commercial 14/04/ Vente Metz RAMARA Chef de service 18/08/ Vente Metz Le SGBDR effectue ensuite les restrictions demandäes. matri cule nom Employe fonction date Embauche salaire comm ission num Service matr Superieur num ero nomservice lieu ANABEL Commercial 16/06/ Vente Metz ROUX Chef de service 30/05/ Vente Metz DUPONT Commercial 14/04/ Vente Metz Le SGBDR effectue enfin la projection des colonnes demandäes nomemploye ANABEL ROUX DUPONT Exercice 4 ALSI_IG1_C02 - SQL LID Partie 1 21

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

Le langage SQL Rappels

Le langage SQL Rappels Le langage SQL Rappels Description du thème : Présentation des principales notions nécessaires pour réaliser des requêtes SQL Mots-clés : Niveau : Bases de données relationnelles, Open Office, champs,

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

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

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

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

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

14/04/2014. un ensemble d'informations sur un sujet : exhaustif, non redondant, structuré, persistant. Gaëlle PERRIN SID2 Grenoble.

14/04/2014. un ensemble d'informations sur un sujet : exhaustif, non redondant, structuré, persistant. Gaëlle PERRIN SID2 Grenoble. Gaëlle PERRIN SID2 Grenoble Le 10/04/2014 Base de Données (BD) : une grande quantité de données, centralisées ou non, servant pour les besoins d'une ou plusieurs applications, interrogeables et modifiables

Plus en dé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

PRESENTATION. Document1 Serge GUERINET Page 1

PRESENTATION. Document1 Serge GUERINET Page 1 PRESENTATION Les domaines couverts par la série STG sont tous des pourvoyeurs ou exploitants des bases de données. Que l'on gère la relation aux clients, le suivi de l'activité financière, la comptabilité

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

Le modäle conceptuel de donnåes (MCD)

Le modäle conceptuel de donnåes (MCD) BTS Informatique de Gestion 1 Äre annåe DAIGL (ModÅlisation) Chapitre 1 Page 1 / 14 LycÄe Jean Rostand CHANTILLY Jean-Marie Cardoni Cours DAIGL (analyse) (1 Äre annåe) BTS INFORMATIQUE DE GESTION 1 Condition

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

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

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

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

REGIME FRAIS DE SANTE Notice d information

REGIME FRAIS DE SANTE Notice d information REGIME FRAIS DE SANTE Notice d information PrÄambule : Par accord du les partenaires sociaux de la branche professionnelle des hétels cafäs restaurants ont mis en place un rägime complämentaire de frais

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

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

Cours Web n o 7 MySQL et PHP

Cours Web n o 7 MySQL et PHP Introduction aux bases de données Cours Web n o 7 MySQL et PHP Sandrine-Dominique Gouraud (gouraud@lri.fr) Pierre Senellart (pierre@senellart.com) Semaine du 7 novembre 2005 S.-D. Gouraud, P. Senellart

Plus en détail

Apprendre le langage SQL - Le DML - 1 / 41 - Apprendre le langage SQL par l exemple Partie 2 : le DML

Apprendre le langage SQL - Le DML - 1 / 41 - Apprendre le langage SQL par l exemple Partie 2 : le DML Apprendre le langage SQL - Le DML - 1 / 41 - Apprendre le langage SQL par l exemple Partie 2 : le DML Ce document est publié sous licence Creative Commons CC-by-nc-nd. Il ne peut ni être modifié, ni faire

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

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

Introduction Ç l informatique et la numärotation binaire

Introduction Ç l informatique et la numärotation binaire BTS Informatique de Gestion AMSI 1 Åre annçe Chapitre 1 Page 1 / 11 LycÄe Jean Rostand CHANTILLY Cardoni Jean-Marie Architecture matärielle des syståmes informatiques (1 Åre annäe) BTS INFORMATIQUE DE

Plus en détail

Chapitre 08 Les requêtes d'interrogation en langage SQL

Chapitre 08 Les requêtes d'interrogation en langage SQL Chapitre 08 Les requêtes d'interrogation en langage SQL Introduction L'étude des requêtes d'interrogation de la base de données est séparée en deux parties : - Une première partie permet de revoir le langage

Plus en détail

Bases de Données. Plan

Bases de Données. Plan Université Mohammed V- Agdal Ecole Mohammadia d'ingénieurs Rabat Bases de Données Mr N.EL FADDOULI 2014-2015 Plan Généralités: Définition de Bases de Données Le modèle relationnel Algèbre relationnelle

Plus en détail

16H Cours / 18H TD / 20H TP

16H Cours / 18H TD / 20H TP INTRODUCTION AUX BASES DE DONNEES 16H Cours / 18H TD / 20H TP 1. INTRODUCTION Des Fichiers aux Bases de Données 2. SYSTEME DE GESTION DE BASE DE DONNEES 2.1. INTRODUCTION AUX SYSTEMES DE GESTION DE BASES

Plus en détail

REMPLACEMENT DU SYSTEME TELEPHONIQUE DE LA MAIRIE DE HOERDT

REMPLACEMENT DU SYSTEME TELEPHONIQUE DE LA MAIRIE DE HOERDT COMMUNE DE HOERDT 1, rue de la Tour BP 302 67728 HOERDT CEDEX Tel. : 03.88.68.20.10 Fax. : 03.88.51.74.24 Mail. : mairie@hoerdt.fr www.hoerdt.fr REMPLACEMENT DU SYSTEME TELEPHONIQUE DE LA MAIRIE DE HOERDT

Plus en détail

SOMMAIRE. Travailler avec les requêtes... 3

SOMMAIRE. Travailler avec les requêtes... 3 Access Les requêtes SOMMAIRE Travailler avec les requêtes... 3 A) Créer une requête sélection en mode QBE... 3 B) Exécuter une requête à partir du mode Modifier (QBE)... 3 C) Passer du mode Feuille de

Plus en détail

26, rue du Faubourg Poissonni re 75010 Paris T l : 01 46 22 07 00

26, rue du Faubourg Poissonni re 75010 Paris T l : 01 46 22 07 00 Dossier de commande 26, rue du Faubourg PoissonniÄre 75010 Paris TÇl : 01 46 22 07 00 SociÄtÄ Anonyme au capital de 291 666 euros RCS Paris 432 735 082 - http://www.oodrive.com Nom SociÇtÇ Adresse TÇlÇphone

Plus en détail

SQL. Requête la plus simple. Projection. Requête la plus simple. Différents modes d interrogation. Requêtes mécanismes d interrogation des données

SQL. Requête la plus simple. Projection. Requête la plus simple. Différents modes d interrogation. Requêtes mécanismes d interrogation des données Requêtes mécanismes d interrogation des données SQL! En entrée : une ou plusieurs tables! En sortie : une table réponse sandra.bringay@univ-montp3.fr roland.mahiques@univ-montp3.fr alexandre.pinlou@univ-montp3.fr

Plus en détail

Bases de données. Chapitre 1. 1.1 Généralité sur les bases de données. 1.2 Avec sqlite3. 1.1.1 Le langage SQL et les bases de données

Bases de données. Chapitre 1. 1.1 Généralité sur les bases de données. 1.2 Avec sqlite3. 1.1.1 Le langage SQL et les bases de données Chapitre 1 Bases de données 1.1 Généralité sur les bases de données 1.1.1 Le langage SQL et les bases de données La base de données (BDD) est un système qui enregistre des informations. Ces informations

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

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

Interrogation de bases de données avec le langage SQL

Interrogation de bases de données avec le langage SQL Web dynamique avec PHP et MySQL Interrogation de bases de données avec le langage SQL C. Sirangelo & F. Tort Interroger une base avec SQL Interroger une base de données: extraire des données de la base

Plus en détail

Partie I du TD 1 au TD 5. Bases de données et MySQL -

Partie I du TD 1 au TD 5. Bases de données et MySQL - Système d information http://www.agroparistech.fr/systeme-d-information.html Partie I du TD 1 au TD 5 - Bases de données et MySQL - Liliana Ibănescu liliana.ibanescu@agroparistech.fr UFR d informatique

Plus en détail

Exemple accessible via une interface Web. Bases de données et systèmes de gestion de bases de données. Généralités. Définitions

Exemple accessible via une interface Web. Bases de données et systèmes de gestion de bases de données. Généralités. Définitions Exemple accessible via une interface Web Une base de données consultable en ligne : Bases de données et systèmes de gestion de bases de données The Trans-atlantic slave trade database: http://www.slavevoyages.org/tast/index.faces

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

Les bases de données Support de cours Pascal Ballet

Les bases de données Support de cours Pascal Ballet Les bases de données Support de cours Pascal Ballet Introduction Les fondements Une base de données a deux objectifs principaux : - le stockage structuré de l'information ET - le traitement des données

Plus en détail

TARIFS CONDITIONS GÉNÉRALES

TARIFS CONDITIONS GÉNÉRALES Centrale d emplois pour la Distribution TARIFS et CONDITIONS GÉNÉRALES http://www.distrijob.fr Offres d Emploi HT OFFRE D EMPLOI STANDARD Parution 2 x 30 jours - 1 poste, multi-rägions 1 offre 325.00 TARIFS

Plus en détail

Statuts CITEC Suisse

Statuts CITEC Suisse Statuts CITEC Suisse I. Nom, siäge, buts Art. 1 Art. 2 Nom et siäge Sous le nom de CITEC Suisse (dånommåe ci-apräs association), est crååe une sociåtå dans le sens du Code civil suisse. L'association a

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

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

A. Conditions de pråparation et d organisation des travaux du Conseil d Administration

A. Conditions de pråparation et d organisation des travaux du Conseil d Administration RAPPORT DU PRESIDENT DU CONSEIL D ADMINISTRATION SUR LES CONDITIONS DE PREPARATION ET D ORGANISATION DES TRAVAUX DU CONSEIL D ADMINISTRATION ET SUR LES PROCEDURES DE CONTROLE INTERNE MISES EN PLACE PAR

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

Ä Autour de la rupture pour motif Åconomique Ç

Ä Autour de la rupture pour motif Åconomique Ç Association franäaise de Droit du travail et de la SÅcuritÅ sociale ------------------------------------------- 5, rue du Renard 75004 Paris - fax : 01.42.71.24.27 mail : afdt.asso@gmail.com- http://www.afdt-asso.fr

Plus en détail

1. Introduction...2. 2. Création d'une requête...2

1. Introduction...2. 2. Création d'une requête...2 1. Introduction...2 2. Création d'une requête...2 3. Définition des critères de sélection...5 3.1 Opérateurs...5 3.2 Les Fonctions...6 3.3 Plusieurs critères portant sur des champs différents...7 3.4 Requête

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

SESSION 2006 INFORMATIQUE. Éléments indicatifs de corrigé DOCUMENT CONFIDENTIEL AUCUNE DIFFUSION AUTORISÉE A L'EXCEPTION DES CORRECTEURS

SESSION 2006 INFORMATIQUE. Éléments indicatifs de corrigé DOCUMENT CONFIDENTIEL AUCUNE DIFFUSION AUTORISÉE A L'EXCEPTION DES CORRECTEURS 620.107bis DECF SESSION 2006 INFORMATIQUE Éléments indicatifs de corrigé DOCUMENT CONFIDENTIEL AUCUNE DIFFUSION AUTORISÉE A L'EXCEPTION DES CORRECTEURS Ce dossier présente des éléments de corrigé à l attention

Plus en détail

Initiation aux bases de données (SGBD) Walter RUDAMETKIN

Initiation aux bases de données (SGBD) Walter RUDAMETKIN Initiation aux bases de données (SGBD) Walter RUDAMETKIN Bureau F011 Walter.Rudametkin@polytech-lille.fr Moi Je suis étranger J'ai un accent Je me trompe beaucoup en français (et en info, et en math, et...)

Plus en détail

Bioinformatique BTV Stockage des données

Bioinformatique BTV Stockage des données 1 / 64 Bioinformatique BTV Stockage des données Jean-Michel Richer jean-michel.richer@univ-angers.fr http://www.info.univ-angers.fr/pub/richer Juillet 2008 2 / 64 Plan Plan 1 Introduction 2 Format de stockage

Plus en détail

SQL sous SqlServer OLIVIER D. DEHECQ Olivier http://www.entraide-info.fr 0

SQL sous SqlServer OLIVIER D. DEHECQ Olivier http://www.entraide-info.fr 0 2013 SQL sous SqlServer OLIVIER D. DEHECQ Olivier http://www.entraide-info.fr 0 Table des matières Signalétique... 2 1 Les bases du SQL... 3 2 SQL server... 6 2 Références des exercices...21 DEHECQ Olivier

Plus en détail

Généralités sur les bases de données

Généralités sur les bases de données Généralités sur les bases de données Qu est-ce donc qu une base de données? Que peut-on attendre d un système de gestion de bases de données? Que peut-on faire avec une base de données? 1 Des données?

Plus en détail

FileMaker 13. Guide de référence SQL

FileMaker 13. Guide de référence SQL FileMaker 13 Guide de référence SQL 2013 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, Californie 95054 FileMaker et Bento sont des marques commerciales de

Plus en détail

Cours: Les Jointures 1

Cours: Les Jointures 1 Bases de Données Avancées Module A IUT Lumière, License CE-STAT 2006-2007 Pierre Parrend Cours: Les Jointures 1 Plan Table of Contents Principe...1 Example...1 Types de Jointures...2 Définitions et examples...2

Plus en détail

CONVENTION TRIPARTITE

CONVENTION TRIPARTITE CONVENTION TRIPARTITE Entre : La CommunautÄ urbaine Nantes MÄtropole, repräsentäe par Madame Johanna ROLLAND, agissant en qualitä de PrÄsidente, et dåment habilitäe Ç cet effet, par la dälibäration du

Plus en détail

PHP & BD. PHP & Bases de données. Logiciels & matériels utilisés. Bases de données et Web

PHP & BD. PHP & Bases de données. Logiciels & matériels utilisés. Bases de données et Web PHP & Bases de données La quantité de données utilisée par certains sites web nécessite l'utilisation d'une base de données Il faut donc disposer d'un SGBD (mysql, postgresql, oracle, ) installé sur un

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

Catalogue professionnel Ä. Ç Licence d exploitation du logiciel Ä MERCATOS Ç DÑveloppement SEEG NTIC Edition

Catalogue professionnel Ä. Ç Licence d exploitation du logiciel Ä MERCATOS Ç DÑveloppement SEEG NTIC Edition Catalogue professionnel Ä. Ç Licence d exploitation du logiciel Ä MERCATOS Ç DÑveloppement SEEG NTIC Edition PROPOSITION COMMERCIALE - LICENCE D EXPLOITATION (rayer toutes les mentions inutiles avant signature

Plus en détail

Mission de vårification des niveaux de champs ÅlectromagnÅtiques råalisåe conformåment au protocole de mesure ANFR / DR-15 V2.1

Mission de vårification des niveaux de champs ÅlectromagnÅtiques råalisåe conformåment au protocole de mesure ANFR / DR-15 V2.1 BUREAU VERITAS 5, Bd Marcel POURTOUT 92563 RUEIL MALMAISON CEDEX MAIRIE DE SAINT JACQUES SUR DARNETAL 20, rue de Verdun 76160 SAINT JACQUES SUR DARNETAL TÄlÄphone : 01 47 52 49 70 TÄlÄcopie : 01 47 52

Plus en détail

sans valeur 1.1. Les conditions gånårales de ventes qui suivent font partie intågrante des contrats entre belboon-adbutler

sans valeur 1.1. Les conditions gånårales de ventes qui suivent font partie intågrante des contrats entre belboon-adbutler Conditions gänärales de vente (CGV) D adhåsion aux programmes d affiliation ainsi que leur fonctionnement sur les plateformes en ligne belboon I. Conditions gänärales 1. Domaine d'application / däfinitions

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

ECR_DESCRIPTION CHAR(80), ECR_MONTANT NUMBER(10,2) NOT NULL, ECR_SENS CHAR(1) NOT NULL) ;

ECR_DESCRIPTION CHAR(80), ECR_MONTANT NUMBER(10,2) NOT NULL, ECR_SENS CHAR(1) NOT NULL) ; RÈGLES A SUIVRE POUR OPTIMISER LES REQUÊTES SQL Le but de ce rapport est d énumérer quelques règles pratiques à appliquer dans l élaboration des requêtes. Il permettra de comprendre pourquoi certaines

Plus en détail

C'est : C'est : un fichier, analogue à une feuille de calcul Excel, contenant les informations.

C'est : C'est : un fichier, analogue à une feuille de calcul Excel, contenant les informations. C'est : un ensemble de fichiers contenant toutes les informations nécessaires à une application + un logiciel de Gestion de ces informations appelé SGBD (Système de Gestion de Base de Données). C'est :

Plus en détail

Apprendre le langage SQL - Le DML - 1 / 21 - Apprendre le langage SQL par l exemple Partie 2 : le DML

Apprendre le langage SQL - Le DML - 1 / 21 - Apprendre le langage SQL par l exemple Partie 2 : le DML Apprendre le langage SQL - Le DML - 1 / 21 - Apprendre le langage SQL par l exemple Partie 2 : le DML Ce document est publié sous licence Creative Commons CC-by-nc-nd. Il ne peut ni être modifié, ni faire

Plus en détail

Cours de Bases de Données Avancées 2006-2007 Groupe cinema, Rapport 4

Cours de Bases de Données Avancées 2006-2007 Groupe cinema, Rapport 4 1 Annexes Avec ce rapport il faut rendre en annexe le script SQL corrigé qui permet de créer la base de données selon votre modèle relationnel ainsi que de la peupler avec un nombre de tuples suffisant.

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

A QUOI SERVENT LES BASES DE DONNÉES?

A QUOI SERVENT LES BASES DE DONNÉES? BASE DE DONNÉES OBJET Virginie Sans virginie.sans@irisa.fr A QUOI SERVENT LES BASES DE DONNÉES? Stockage des informations : sur un support informatique pendant une longue période de taille importante accès

Plus en détail

Les principaux domaines de l informatique

Les principaux domaines de l informatique Les principaux domaines de l informatique... abordés dans le cadre de ce cours: La Programmation Les Systèmes d Exploitation Les Systèmes d Information La Conception d Interfaces Le Calcul Scientifique

Plus en détail

Bases de Données & Interfaces Web. stanislas.oger@univ-avignon.fr

Bases de Données & Interfaces Web. stanislas.oger@univ-avignon.fr Bases de Données & Interfaces Web stanislas.oger@univ-avignon.fr 1 Architecture d'un SI Web Fonctionnement Dynamique avec Base de Données 2 Idée Dynamiser les pages avec des infos venant de BDD Enregistrer

Plus en détail

AGRÉGATION «ÉCONOMIE ET GESTION»

AGRÉGATION «ÉCONOMIE ET GESTION» AGRÉGATION «ÉCONOMIE ET GESTION» CONCOURS INTERNE SESSION 2002 ÉPREUVE SUR LES TECHNIQUES DE GESTION ET COMPORTANT DES ASPECTS PÉDAGOGIQUES DOMAINE : économie et gestion informatique Durée de préparation

Plus en détail

Apprendre le langage SQL le DDL - 1 / 30 - Apprendre le langage SQL par l exemple

Apprendre le langage SQL le DDL - 1 / 30 - Apprendre le langage SQL par l exemple Apprendre le langage SQL le DDL - 1 / 30 - Apprendre le langage SQL par l exemple Ce document est publié sous licence Creative Commons CC-by-nc-nd. Il ne peut ni être modifié, ni faire l objet d une exploitation

Plus en détail

PRODIGE V3. Manuel utilisateurs. Consultation des métadonnées

PRODIGE V3. Manuel utilisateurs. Consultation des métadonnées PRODIGE V3 Manuel utilisateurs Consultation des métadonnées Pour plus d'information sur le dispositif : à remplir par chaque site éventuellement 2 PRODIGE V3 : Consultation des métadonnées SOMMAIRE 1.

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

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

Algèbre relationnelle

Algèbre relationnelle Algèbre relationnelle Concepts Descriptifs : Bilan RELATION ou TABLE ATTRIBUT ou COLONNE DOMAINE ou TYPE CLE CLE ETRANGERE Langages de manipulation Langages formels : base théorique solide Langages utilisateurs

Plus en détail

Vulnérabilités logicielles Injection SQL. Chamseddine Talhi École de technologie supérieure (ÉTS) Dép. Génie logiciel et des TI

Vulnérabilités logicielles Injection SQL. Chamseddine Talhi École de technologie supérieure (ÉTS) Dép. Génie logiciel et des TI Vulnérabilités logicielles Injection SQL Chamseddine Talhi École de technologie supérieure (ÉTS) Dép. Génie logiciel et des TI 1 Plan SQL Injection SQL Injections SQL standards Injections SQL de requêtes

Plus en détail

DOMMAGE OUVRAGE/CONSTRUCTEUR NON REALISATEUR MARCHE A LOTS SEPARES

DOMMAGE OUVRAGE/CONSTRUCTEUR NON REALISATEUR MARCHE A LOTS SEPARES MARCHE DE PRESTATION DE SERVICE D ASSURANCES DOMMAGE OUVRAGE/CONSTRUCTEUR NON REALISATEUR MARCHE A LOTS SEPARES CAHIER DES CLAUSES ADMINISTRATIVES PARTICULIERES Procédure adaptée Pouvoir Adjudicateur :

Plus en détail

15 septembre 2010. Démo #2 MySQL Séquençage

15 septembre 2010. Démo #2 MySQL Séquençage 15 septembre 2010 Démo #2 MySQL Séquençage SQL et MySQL SQL: structured query language langage pour manipuler des données dans des bases de données relationnelles MySQL: Implantation de SQL Ajout à SQL

Plus en détail

Bases de données relationnelles : Introduction

Bases de données relationnelles : Introduction Bases de données relationnelles : Introduction historique et principes V. Benzaken Département d informatique LRI UMR 8623 CNRS Université Paris Sud veronique.benzaken@u-psud.fr https://www.lri.fr/ benzaken/

Plus en détail

Bases de données multidimensionnelles OLAP. OnLine Analytical Processing

Bases de données multidimensionnelles OLAP. OnLine Analytical Processing Bases de données multidimensionnelles OLAP OnLine Analytical Processing OLAP OLAP (On Line Analytical Processing): Ensemble des outils nécessaires pour la mise en place d'un Système d'information décisionnel

Plus en détail

Plan Général Prévisionnel (1/2) (non contractuel) Internet et Outils L1/IO2 2006-2007 S2-IO2 Bases de données: Jointures, Transactions

Plan Général Prévisionnel (1/2) (non contractuel) Internet et Outils L1/IO2 2006-2007 S2-IO2 Bases de données: Jointures, Transactions Général Prévisionnel (1/2) (non contractuel) Internet et Outils L1/IO2 2006-2007 S2-IO2 Bases de données: Jointures, Cours Internet et Outils: [1/12] Intro, Internet, Web, XHTML (2H) [2/12] XHTML(2H) [3/12]

Plus en détail

DOCUMENT DE REFERENCE 2008/09

DOCUMENT DE REFERENCE 2008/09 SociÄtÄ anonyme au capital de 13.869.062 euros SiÅge social : 89-91 Boulevard National - 92250 La Garenne-Colombes 329.764.625 R.C.S Nanterre DOCUMENT DE REFERENCE 2008/09 (Exercice du 1 er avril 2008

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

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

CAHIER DES CHARGES *** PRESTATIONS D ASSURANCES

CAHIER DES CHARGES *** PRESTATIONS D ASSURANCES *** PRESTATIONS D ASSURANCES SOMMAIRE 1.3. OBJET DU CONTRAT...5 1.5. CALCUL DE LA PRIME...9 2.1 DEFINITIONS...9 2.2 ACTIVITES GARANTIES...9 2.3 OBJET DU CONTRAT...9 2.4 EXTENSION DE GARANTIE AU RECOUVREMENT

Plus en détail

SQL Serveur 2012+ Programme de formation. France Belgique Suisse - Canada. Formez vos salariés pour optimiser la productivité de votre entreprise

SQL Serveur 2012+ Programme de formation. France Belgique Suisse - Canada. Formez vos salariés pour optimiser la productivité de votre entreprise SQL Serveur 2012+ Programme de formation France Belgique Suisse - Canada Microsoft Partner Formez vos salariés pour optimiser la productivité de votre entreprise Dernière mise à jour le : Avril 2014 Des

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

BASES DE DONNÉES RELATIONNELLES. Eric Marcon

BASES DE DONNÉES RELATIONNELLES. Eric Marcon BASES DE DONNÉES RELATIONNELLES Eric Marcon 02/05/2011 Les opinions émises par les auteurs sont personnelles et n engagent pas l UMR EcoFoG ou ses tutelles. Sommaire Objectifs... 5 Structurer les données...

Plus en détail

MarchÄ des professionnels. Le marchä des professionnels. Commentaires. Prise de notes

MarchÄ des professionnels. Le marchä des professionnels. Commentaires. Prise de notes Le marchä des professionnels 1 Rappels de la formation präcädente 2 Aujourd hui : STATUTS JURDQUE, FSCAL, SOCAL 3 STATUTS JURDQUE, FSCAL, SOCAL Sommaire 1 Quelques notions essentielles MarchÄ des professionnels

Plus en détail

Bases de données cours 1

Bases de données cours 1 Bases de données cours 1 Introduction Catalin Dima Objectifs du cours Modèle relationnel et logique des bases de données. Langage SQL. Conception de bases de données. SQL et PHP. Cours essentiel pour votre

Plus en détail

PRODIGE V3. Manuel utilisateurs. Consultation des métadonnées

PRODIGE V3. Manuel utilisateurs. Consultation des métadonnées PRODIGE V3 Manuel utilisateurs Consultation des métadonnées Pour plus d'information sur le dispositif : à remplir par chaque site éventuellement 2 PRODIGE V3 : Consultation des métadonnées SOMMAIRE 1.

Plus en détail

Chapitre 10. Architectures des systèmes de gestion de bases de données

Chapitre 10. Architectures des systèmes de gestion de bases de données Chapitre 10 Architectures des systèmes de gestion de bases de données Introduction Les technologies des dernières années ont amené la notion d environnement distribué (dispersions des données). Pour reliér

Plus en détail

Utiliser Access ou Excel pour gérer vos données

Utiliser Access ou Excel pour gérer vos données Page 1 of 5 Microsoft Office Access Utiliser Access ou Excel pour gérer vos données S'applique à : Microsoft Office Access 2007 Masquer tout Les programmes de feuilles de calcul automatisées, tels que

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

Cours SQL. Base du langage SQL et des bases de données

Cours SQL. Base du langage SQL et des bases de données Cours SQL Base du langage SQL et des bases de données Auteur Tony Archambeau Site web http://sql.sh Date 24 mai 2014 Licence Mis à disposition selon les termes de la licence Creative Commons Attribution

Plus en détail

Memento MYSQL LINUX. Pour installer le serveur Mysql. Installer les paquets suivants :

Memento MYSQL LINUX. Pour installer le serveur Mysql. Installer les paquets suivants : Memento MYSQL LINUX Pour installer le serveur Mysql Installer les paquets suivants : Mysql-server (moteur de bases de données) Apache2 (serveur web si besoin) Php5 (langage de programmation permettant

Plus en détail

Bases de données Outils de gestion

Bases de données Outils de gestion 11/03/2010 Bases de données Outils de gestion Mise en place d outils pour gérer, stocker et utiliser les informations d une recherche biomédicale ent réalisé par L. QUINQUIS d épidémiologie et de biostatistique

Plus en détail