TD : langage assertionnel SQL. Corrigé. Liste des requêtes à exprimer en SQL. Res

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

Download "TD : langage assertionnel SQL. Corrigé. Liste des requêtes à exprimer en SQL. Res"

Transcription

1 Bases de Données TD : langage assertionnel SQL Corrigé Liste des requêtes à exprimer en SQL. Tracer le graphe des clés étrangères avant de commencer à répondre aux requêtes. ERSONNE Requête 3 : Donner la liste de tous les genres de film. SELECT DISTINCT GENRE Requête 4 : Trouver le titre et l année des films de science fiction dont le budget dépasse $. SELECT TITRE, ANNÉE WHERE GENRE = Scii AND BUDGET > GENRE = Scii ACTEUR CINÉMA BUDGET > DISTRIBUTION TITRE, ANNÉE ILM Requêtes élémentaires ASSE SALLE Requête 1 : Retrouver la liste de tous les films. Requête 2 : Retrouver la liste des films dont la longueur dépasse 180 min. WHERE LONGUEUR > 180 Requête 5 : Donner le nombre de films par genre. SELECT GENRE, COUNT (*) GROU BY GENRE Requête 6 : Donner le nombre de films de 1960 par genre. SELECT GENRE, COUNT (*) WHERE ANNÉE = 1960 GROU BY GENRE

2 Requêtes faciles la requête imbriquée ne contribue pas au résultat Requête 7 : Trouver le titre des films réalisés par Roman olanski. orme plate : SELECT.TITRE, ERSONNE WHERE.RÉALISATEUR =.NUM AND.RÉNOM = Roman AND.NOM = olanski RÉALISATEUR = NUM TITRE RÉNOM = Roman NOM = olanski RÉALISATEUR = NUM RÉNOM = Roman NOM = olanski Requête 8 : Quels sont les acteurs comiques (nom, prénom) qui ont joué dans un film de Spielberg. TITRE SÉCIALITÉ = Comique orme imbriquée : SELECT TITRE WHERE RÉALISATEUR IN ( WHERE RÉNOM = Roman AND NOM = olanski ) A NUM = NUMA RÉNOM, NOM D NUM = NUM RÉALISATEUR = NUMA R NOM = Spielberg orme plate : SELECT A.RÉNOM, A.NOM A, DISTRIBUTION D, ILM, ERSONNE R WHERE A.NUM = D.NUMA Corrigé du TD SQL (BD-ilmographie) 2

3 AND AND AND AND D.SÉCIALITÉ = Comique D.NUM =.NUM.RÉALISATEUR = R.NUM R.NOM = Spielberg orme imbriquée : SELECT RÉNOM, NOM SELECT NUMA ROM DISTRIBUTION WHERE SÉCIALITÉ = Comique AND NUM IN ( WHERE RÉALISATEUR IN ( ROMERSONNE WHERE NOM = Spielberg ) ) ) seule la variable A contribue au résultat, on obtient trois niveaux d imbrication Requête 9 : Trouver le titre et l année du film le plus long. orme imbriquée : SELECT TITRE, ANNÉE WHERE LONGUEUR = ( SELECT MAX (LONGUEUR) ) Requêtes de difficulté moyenne Requête 10 : Nom et prénom des acteurs qui ont joué Gavroche dans les différentes versions des «Misérables» avec les dates correspondantes. orme plate : SELECT.RÉNOM,.NOM,.DATE, DISTRIBUTION D, ILM WHERE.NUM = D.NUMA AND D.RÔLE = Gavroche AND G.NUM =.NUM AND.TITRE = Les misérables A NUM = NUMA RÉNOM, NOM SÉCIALITÉ = Comique D NUM = NUM RÉALISATEUR = NUMA R NOM = Spielberg NUM = NUMA RÉNOM, NOM RÔLE = Gavroche D NUM = NUM DATE TITRE = Les misérables Corrigé du TD SQL (BD-ilmographie) 3

4 orme imbriquée SQL-92 : SELECT.RÉNOM,.NOM,.DATE, ILM WHERE.TITRE = Les misérables AND (.NUM,.NUM) IN ( SELECT NUMA, NUM ROM DISTRIBUTION WHERE RÔLE = Gavroche ) la requête imbriquée ne contribue pas au résultat et est liée deux fois à la requête englobante orme imbriquée SQL-92 : SELECT DISTINCT RÉNOM, NOM SELECT RÉALISATEUR WHERE (RÉALISATEUR, NUM) IN ( SELECT NUMA, NUM ROM DISTRIBUTION ) ) RÉALISATEUR = NUMA NUM = NUMA RÉNOM, NOM RÔLE = Gavroche D NUM = NUM DATE TITRE = Les misérables RÉALISATEUR = NUM NUM = NUM RÉNOM, NOM D NUM = NUMA Requête 11 : Donner le nom et le prénom des réalisateurs qui ont joué dans au moins un de leurs propres films. orme plate : SELECT DISTINCT.RÉNOM,.NOM, ILM, DISTRIBUTION D WHERE.NUM =.RÉALISATEUR AND.NUM = D.NUM AND D.NUMA =.RÉALISATEUR Requête 12 : Quel est le total des salaires des acteurs du film «Nuits blanches à Seattle». orme plate : SELECT SUM (D.SALAIRE) ROM DISTRIBUTION D, ILM WHERE DISTRIBUTION.NUM =.NUM AND.TITRE = Nuits blanches à Seattle orme imbriquée : SELECT SUM (SALAIRE) Corrigé du TD SQL (BD-ilmographie) 4

5 ROM DISTRIBUTION WHERE NUM IN ( WHERE TITRE = Nuits blanches à Seattle ) Requête 14 : Trouver le genre des films des années 80 dont le budget moyen dépasse $. SELECT GENRE WHERE ANNÉE BETWEEN 1980 AND 1989 GROU BY GENRE HAVING AVG (BUDGET) > D NUM = NUM TITRE = Nuits blanches à Seattle Requêtes plus complexes Requête 15 : our chaque film de Spielberg (titre, année), donner le total des salaires des acteurs. SALAIRE SUM Requête 13 : Donner la moyenne des salaires des acteurs par film, avec le titre et l année correspondants. orme SQL-89 : SELECT.TITRE,.ANNÉE, AVG (D.SALAIRE), DISTRIBUTION D WHERE.NUM = D.NUM GROU BY.TITRE,.ANNÉE orme SQL-92 : SELECT.TITRE,.ANNÉE, AVG (D.SALAIRE), DISTRIBUTION D WHERE.NUM = D.NUM GROU BY.NUM -- Si NUM a bien été déclaré clé primaire de la relation ILM orme plate : SELECT.TITRE,.ANNÉE, SUM (D.SALAIRE), DISTRIBUTION D, ERSONNE WHERE.NUM = D.NUM AND.RÉALISATEUR =.NUM AND.NOM = Spielberg GROU BY.TITRE,.ANNÉE orme imbriquée SQL-89 : SELECT.TITRE,.ANNÉE, SUM (D.SALAIRE), DISTRIBUTION D WHERE.NUM = D.NUM AND.RÉALISATEUR IN ( WHERE NOM = Spielberg ) GROU BY.TITRE,.ANNÉE orme imbriquée SQL-92 : SELECT.TITRE,.ANNÉE, X.SUMSAL, (, SUM (SALAIRE) AS SUMSAL ROM DISTRIBUTION Corrigé du TD SQL (BD-ilmographie) 5

6 GROU BY NUM ) AS X WHERE.NUM = X.NUM AND.RÉALISATEUR IN ( WHERE NOM = Spielberg ) Requête 16 : Lister les cinémas dont la taille moyenne d'écran est supérieure à 40 mètres carrés. orme plate : SELECT C.NOM, C.VILLE ROM CINÉMA C, SALLE S WHERE C.NUMC = S.NUMC GROU BY C.NUMC, C.NOM, C.VILLE HAVING AVG (S.TAILLE_ÉCRAN) > 40 ) orme imbriquée SQL-92 : SELECT NOM, VILLE ROM CINÉMA WHERE NUMC IN ( SELECT NUMC ROM SALLE GROU BY NUMC HAVING AVG (TAILLE_ÉCRAN) > 40 ) Requête 17 : Quels sont les cinémas arisiens de la ox, avec le film correspondant, qui passent un film d'elia Kazan avant 22 heures dans une salle d'au moins 200 places et d'écran de taille supérieure à 30 m carrés. orme plate : SELECT DISTINCT C.NOM,.TITRE ROM CINÉMA C, SALLE S, ASSE, ILM, ERSONNE WHERE C.COMAGNIE = ox AND C.VILLE = aris AND C.NUMC = S.NUMC AND S.NBLACES >= 200 AND S.TAILLE_ÉCRAN > 30 AND S.NUMC =.NUMC AND S.NUMS =.NUMS AND.HORAIRE < 22 :00 AND.NUM =.NUM AND.RÉALISATEUR =.NUM AND.RÉNOM = Elia AND.NOM = Kazan NUMC = NUMC C TAILLE_ÉCRAN > 30 NBLACES >= 200 S NOM NUMC = NUMC NUMS = NUMS HORAIRE < 22:00 NUM = NUM TITRE orme imbriquée SQL-89 : SELECT DISTINCT C.NOM,.TITRE ROM CINÉMA C, SALLE S, ASSE, ILM WHERE C.COMAGNIE = ox AND C.VILLE = aris AND C.NUMC = S.NUMC AND S.NBLACES >= 200 AND S.TAILLE_ÉCRAN > 30 AND S.NUMC =.NUMC AND S.NUMS =.NUMS AND.HORAIRE < 22 :00 AND.NUM =.NUM RÉALISATEUR = NUMA R NOM = Spielberg Corrigé du TD SQL (BD-ilmographie) 6

7 AND.RÉALISATEUR IN ( WHERE RÉNOM = Elia AND NOM = Kazan ) NUM = NUM NUMC = NUMC COMAGNIE = ox orme imbriquée SQL-92 : SELECT DISTINCT C.NOM,.TITRE ROM CINÉMA C, ILM WHERE C.COMAGNIE = ox AND C.VILLE = aris AND (C.NUMC,.NUM) IN ( SELECT S.NUMC,.NUM ROM SALLE S, ASSE WHERE S.NBLACES >= 200 AND S.TAILLE_ÉCRAN > 30 AND S.NUMC =.NUMC AND S.NUMS =.NUMS AND.HORAIRE < 22 :00 ) AND.RÉALISATEUR IN ( WHERE RÉNOM = Elia AND NOM = Kazan ) Requête 18 : Trouver le titre des films qui ne passent à aucun cinéma de la compagnie OX. On commence par poser la requête inverse : les films qui passent dans un (au moins) cinéma de la ox. orme plate : pour trouver ceux qui passent dans un cinéma de la ox SELECT DISTINCT.NUM,.TITRE, ASSE, CINÉMA C WHERE.NUM =.NUM AND.NUMC = C.NUMC AND C.COMAGNIE = ox NUM, TITRE orme imbriquée 1 prédicat IN : pour trouver ceux qui passent dans un cinéma de la ox SELECT DISTINCT NUM, TITRE WHERE NUM IN ( ROM ASSE WHERE NUMC IN ( SELECT NUMC ROM CINÉMA WHERE COMAGNIE = ox ) ) orme imbriquée 2 prédicat EXISTS : toujours pour trouver ceux qui passent dans un cinéma de la ox SELECT DISTINCT NUM, TITRE WHERE EXISTS ( ROM ASSE WHERE.NUM =.NUM AND EXISTS ( C Corrigé du TD SQL (BD-ilmographie) 7

8 ROM CINÉMA C WHERE C.NUMC =.NUMC AND COMAGNIE = ox ) ) La négation de ces deux dernières formes permet d exprimer la requête initiale : les films qui ne passent à aucun des cinémas de la ox. orme imbriquée 1 prédicat NOT IN : pour trouver ceux qui ne passent dans aucun cinéma de la ox SELECT DISTINCT NUM, TITRE WHERE NUM NOT IN ( ROM ASSE WHERE NUMC IN ( SELECT NUMC ROM CINÉMA WHERE COMAGNIE = ox ) ) orme imbriquée 2 prédicat NOT EXISTS : pour trouver ceux qui ne passent dans aucun cinéma de la ox SELECT DISTINCT NUM, TITRE WHERE NOT EXISTS ( ROM ASSE WHERE.NUM =.NUM AND EXISTS ( ROM CINÉMA C WHERE C.NUMC =.NUMC AND COMAGNIE = ox ) ) our finalement arriver à la forme la plus simple, où seul le prédicat NOT EXISTS provoque un niveau d imbrication. orme 3 prédicat NOT EXISTS uniquement : SELECT DISTINCT NUM, TITRE WHERE NOT EXISTS ( ROM ASSE, CINÉMA C WHERE.NUM =.NUM AND.NUMC = C.NUMC AND COMAGNIE = ox ) Si on est très pointilleux, on peut remarquer que la question «qui ne passent à aucun» peut être comprise comme ne devant retourner que les films actuellement programmés, mais pas dans un cinéma de la ox. Si la relation ILM comporte tous les films qui ont été programmés, on peut modifier la requête comme suit : orme complète : SELECT DISTINCT NUM, TITRE WHERE NUM IN ( ROM ASSE ) AND NOT EXISTS ( ROM ASSE, CINÉMA C WHERE.NUM =.NUM AND.NUMC = C.NUMC AND COMAGNIE = ox ) Requête 19 : Trouver le nom et le prénom des acteurs qui ont eu un salaire plus important dans un film particulier que le salaire du réalisateur du même film. En supposant pour simplifier que les acteurs n ont joué qu un seul rôle dans le film. orme plate : SELECT A.RÉNOM, A.NOM A, DISTRIBUTION D, ILM WHERE A.NUM = D.NUMA Corrigé du TD SQL (BD-ilmographie) 8

9 AND AND D.NUM =.NUM D.SALAIRE >.SALAIRE_RÉAL SALAIRE_RÉAL < SALAIRE NUM = NUM RÉNOM, NOM D NUM = NUMA orme imbriquée 1 : SELECT RÉNOM, NOM SELECT D.NUMA ROM DISTRIBUTION D, ILM WHERE D.NUM =.NUM AND D.SALAIRE >.SALAIRE_RÉAL ) orme imbriquée 2 : SELECT RÉNOM, NOM SELECT NUMA ROM DISTRIBUTION D WHERE D.SALAIRE > ( SELECT.SALAIRE_RÉAL WHERE D.NUM =.NUM ) ) En tenant compte de la possibilité que les acteurs aient joué plusieurs rôles dans le film, et en supposant qu ils touchent un salaire pour chaque rôle dans ce cas. (NB : cela ne reflète pas forcément les pratiques de l industrie du cinéma, mais pour faire plus proche de la réalité, il faudrait compliquer sensiblement le schéma de la base). orme imbriquée SQL-89 : SELECT DISTINCT A.RÉNOM, A.NOM A, DISTRIBUTION D WHERE A.NUM = D.NUMA GROU BY D.NUMA, D.NUM, A.RÉNOM, A.NOM HAVING SUM (SALAIRE) > ( SELECT SALAIRE_RÉAL WHERE D.NUM =.NUM ) ) orme imbriquée SQL-92 : SELECT RÉNOM, NOM SELECT NUMA ROM DISTRIBUTION D GROU BY NUMA, NUM HAVING SUM (SALAIRE) > ( SELECT SALAIRE_RÉAL WHERE D.NUM =.NUM ) ) Requêtes difficiles Requête 20 : Trouver les couples acteur-réalisateur (noms et prénoms) tels que l un a dirigé l autre sur un film et vice-versa sur un autre. orme plate : SELECT DISTINCT 1.RÉNOM, 1.NOM, 2.RÉNOM, 2.NOM 1, ERSONNE 2, ILM 1, ILM 2, Corrigé du TD SQL (BD-ilmographie) 9

10 DISTRIBUTION D1, DISTRIBUTION D2 WHERE 1.NUM > 2.NUM -- ERMET D ÉLIMINER DEUX ROBLÈMES : -- LISTER UN COULE (1, 2) UNE SEULE OIS -- DANS UN SEUL ORDRE -- ÉLIMINER LE CAS DES RÉALISATEURS QUI ONT JOUÉ -- DANS LEUR RORE ILM AND 1.NUM = 1.RÉALISATEUR AND 2.NUM = 2.RÉALISATEUR AND 1.NUM = D1.NUM AND D1.NUMA = 2.RÉALISATEUR AND 2.NUM = D2.NUM AND D2.NUMA = 1.RÉALISATEUR D1 NUM = NUM RÉALISATEUR = NUMA 1 NUMA = RÉALISATEUR NUMA = NUM 1 RÉNOM, NOM NUM > NUM 1 RÉNOM, NOM 1 NUMA = RÉALISATEUR RÉALISATEUR = NUMA NUM = NUMA NUM = NUM orme imbriquée SQL-92 : SELECT DISTINCT 1.RÉNOM, 1.NOM, 2.RÉNOM, 2.NOM 1, ERSONNE 2 WHERE (1.NUM, 2.NUM) IN ( SELECT 1.RÉALISATEUR, 2.RÉALISATEUR 1, ILM 2, DISTRIBUTION D1, DISTRIBUTION D2 WHERE 1.RÉALISATEUR > 2.RÉALISATEUR -- ERMET D ÉLIMINER DEUX ROBLÈMES : -- LISTER UN COULE (RÉAL1, RÉAL2) UNE SEULE OIS D1 -- DANS UN SEUL ORDRE -- ÉLIMINER LE CAS DES RÉALISATEURS QUI ONT JOUÉ -- DANS LEUR RORE ILM AND 1.NUM = D1.NUM AND D1.NUMA = 2.RÉALISATEUR AND 2.NUM = D2.NUM AND D2.NUMA = 1.RÉALISATEUR ) Requête 21 : Trouver le nom, le prénom, le numéro des acteurs qui ont joué dans tous les films de Lelouch, s'il y en a. On peut rephraser logiquement cette requête en remarquant que l on cherche les acteurs des films de Lelouch pour lesquels pour chaque film de Lelouch on peut trouver un tuple dans distribution qui indique que l acteur a bien joué dans ce film. {acteur : " film-de-lelouch, $ distribution tq acteur-a-joué-dans-film } SQL ne comporte pas d équivalent du quantificateur universel ". On doit donc utiliser une transformation logique introduction d une double négation qui produit la négation d un quantificateur existentiel ÿ$ après descente d une des deux négations. {acteur : ÿ$ film-de-lelouch, ÿ$ distribution tq acteur-a-joué-dans-film } Le plus simple est de d abord écrire la requête sans négation en utilisant une forme imbriquée avec des prédicats EXIXTS, puis d introduire une double négation. On commencera donc par chercher le nom, le prénom, le numéro des acteurs qui ont joué dans un des films de Lelouch. orme imbriquée prédicat EXISTS : «dans un des films» SELECT NOM, RÉNOM WHERE EXISTS ( WHERE RÉALISATEUR IN ( WHERE NOM = Lelouch ) AND EXISTS ( Corrigé du TD SQL (BD-ilmographie) 10

11 ROM DISTRIBUTION D WHERE D.NUM =.NUM AND D.NUMA =.NUM ) ) Il ne reste plus alors qu à introduire les deux négations pour obtenir la requête souhaitée. orme imbriquée prédicat NOT EXISTS : «dans tous les films» SELECT NOM, RÉNOM, NUM WHERE NOT EXISTS ( WHERE RÉALISATEUR IN ( WHERE NOM = Lelouch ) AND NOT EXISTS ( ROM DISTRIBUTION D WHERE D.NUM =.NUM AND D.NUMA =.NUM ) ) Requête 22 : our chaque film de Bergman, trouver le nom et le prénom de l'acteur qui a eu le plus gros salaire. Il faut également rephraser cette requête pour l exprimer de façon logique. La requête consiste à chercher les acteurs pour lesquels, quels que soient les autres acteurs du même film, leur salaire est plus élevé. our simplifier on va d abord se limiter au cas où un acteur ne joue qu un rôle par film. { film, acteur : film Œ film-de-bergman, acteur Œ acteur-ayant-joué-dans-cefilm, " autre-acteur-ayant-joué-dans-ce-film $ distribution tq acteur-a-jouédans-film-avec-plus-gros-salaire-que-autre-acteur } Soit après introduction d une double négation pour éliminer le " : { film, acteur : film Œ film-de-bergman, acteur Œ acteur-ayant-joué-dans-cefilm, ÿ$ autre-acteur-ayant-joué-dans-ce-film ÿ$ distribution tq acteur-a-jouédans-film-avec-plus-gros-salaire-que-autre-acteur } orme imbriquée prédicat NOT EXISTS : un seul rôle par acteur SELECT.TITRE, A.RÉNOM, A.NOM, DISTRIBUTION D1, ERSONNE A WHERE.NUM = D1.NUM AND D1.NUMA = A.NUM AND RÉALISATEUR IN ( WHERE NOM = Bergman ) AND NOT EXISTS ( ROM DISTRIBUTION D2 WHERE D2.NUM = D1.NUM AND D2.SALAIRE > D1.SALAIRE ) En tenant compte maintenant de la possibilité pour un acteur de jouer plusieurs rôles dans un film, on obtient la requête suivante. orme imbriquée SQL-89 + prédicat > ALL : possibilité de plusieurs rôles pour un même acteur SELECT.TITRE, A.RÉNOM, A.NOM, DISTRIBUTION D1, ERSONNE A WHERE.NUM = D1.NUM AND D1.NUMA = A.NUM AND RÉALISATEUR IN ( WHERE NOM = Bergman ) GROU BY D1.NUM, D1.NUMA,.TITRE, A.RÉNOM, A.NOM HAVING SUM (SALAIRE) > ALL ( SELECT SUM (SALAIRE) ROM DISTRIBUTION D2 WHERE D2.NUM = D1.NUM Corrigé du TD SQL (BD-ilmographie) 11

12 AND D2.NUMA <> D1.NUMA GROU BY D2.NUMA ) orme imbriquée SQL-92 : possibilité de plusieurs rôles pour un même acteur SELECT.TITRE, A.RÉNOM, A.NOM, ERSONNE A WHERE (.NUM, A.NUM) IN ( SELECT D1.NUM, D1.NUMA ROM DISTRIBUTION D1 WHERE D1.NUM IN ( WHERE RÉALISATEUR IN ( WHERE NOM = Bergman ) ) GROU BY D1.NUM, D1.NUMA HAVING SUM (D1.SALAIRE) = ( SELECT MAX ( SELECT SUM (D2.SALAIRE) ROM DISTRIBUTION D2 WHERE D2.NUM = D1.NUM GROU BY D2.NUMA ) ) On peut aussi simplifier en repartant de la requête valable seulement si un acteur ne joue qu un rôle par film et en utilisant une vue groupée à la place de distribution. Utilisation d une vue groupée SQL-92 : CREATE VIEW SALAIRE_TOTAL_ACTEUR_ILM (NUMA, NUM, SALAIRE_TOTAL) AS SELECT NUMA, NUM, SUM (SALAIRE) GROU BY NUMA, NUM SELECT.TITRE, A.RÉNOM, A.NOM, SALAIRE_TOTAL_ACTEUR_ILM D1, ERSONNE A WHERE.NUM = D1.NUM AND D1.NUMA = A.NUM AND RÉALISATEUR IN ( WHERE NOM = Bergman ) AND NOT EXISTS ( ROM SALAIRE_TOTAL_ACTEUR_ILM D2 WHERE D2.NUM = D1.NUM AND D2.SALAIRE_TOTAL > D1.SALAIRE_TOTAL ) Requête 23 : Donner le nom et le prénom des réalisateurs qui ont eu le plus gros salaire sur un de leurs films (par comparaison avec ceux des acteurs). Hypothèse 1 : chaque acteur ne joue qu un rôle, le réalisateur ne joue pas dans le film correspondant. orme imbriquée : SELECT RÉNOM, NOM SELECT RÉALISATEUR WHERE SALAIRE_RÉAL > ( SELECT MAX (SALAIRE) ROM DISTRIBUTION D WHERE D.NUM =.NUM ) ) Hypothèse 2 : un acteur peut jouer plusieurs rôles, le réalisateur ne joue pas dans le film correspondant. orme imbriquée : SELECT RÉNOM, NOM SELECT RÉALISATEUR Corrigé du TD SQL (BD-ilmographie) 12

13 WHERE SALAIRE_RÉAL > ALL ( SELECT SUM (SALAIRE) ROM DISTRIBUTION D WHERE D.NUM =.NUM GROU BY NUMA ) ) Hypothèse 3 : Tout acteur y compris le réalisateur s il joue dans le film correspondant peut jouer plusieurs rôles. orme imbriquée SQL-92 : SELECT RÉNOM, NOM SELECT RÉALISATEUR WHERE SALAIRE_RÉAL + ( SELECT SUM (SALAIRE) ROM DISTRIBUTION D1 WHERE D1.NUM =.NUM AND D1.NUMA =.RÉALISATEUR ) > ( SELECT MAX ( SELECT SUM (SALAIRE) ROM DISTRIBUTION D2 WHERE D2.NUM =.NUM GROU BY D2.NUMA ) ) ) Schéma complémentaire RÉCOMENSE (NUMR, CATÉGORIE, ESTIVAL) RÉCOMENSE_ILM (NUM, ANNÉE, NUMR) RÉCOMENSE_ACTEUR (NUMA, NUM, ANNÉE, NUMR) our répondre aux questions suivantes, il faut noter que lorsqu'un acteur reçoit une récompense, le film en reçoit une indirectement. Ce schéma complémentaire conduit à utiliser une union dans les requêtes. Requête de difficulté moyenne Requête 24 : Donner le titre des films qui ont été primés au moins une fois (y compris les récompenses des acteurs jouant dans le film). orme plate SQL-89 : SELECT DISTINCT.TITRE,.ANNÉE, RÉCOMENSE_ILM R WHERE.NUM = R.NUM UNION SELECT DISTINCT.TITRE,.ANNÉE, RÉCOMENSE_ACTEUR RA WHERE.NUM = RA.NUM orme imbriquée SQL-92 : SELECT TITRE, ANNÉE WHERE NUM IN ( ROM RÉCOMENSE_ILM UNION ROM RÉCOMENSE_ACTEUR ) Requêtes difficiles Requête 25 : Lister les cinémas qui ont exclusivement passé des films primés. Il faut rephraser cette requête pour l exprimer de façon logique. La requête consiste à chercher les cinémas pour lesquels, quels que soient les films programmés, ces films ont obtenu au moins une récompense. Comme on ne peut pas utiliser d union dans une sous-requête, il faut donc utiliser une disjonction (ou). { cinéma : " film-programmé-dans-ce-cinéma ( ($ récompense-film tq film-aété-récompensé) ($ récompense-acteur tq film-a-été-récompensé) ) } Soit, après introduction d une double négation pour éliminer le ", la disjonction se transforme en conjonction (et) : Corrigé du TD SQL (BD-ilmographie) 13

14 { cinéma : ÿ$ film-programmé-dans-ce-cinéma ( (ÿ$ récompense-film tq filma-été-récompensé) Ÿ (ÿ$ récompense-acteur tq film-a-été-récompensé) ) } orme imbriquée SQL-89 : SELECT NOM, VILLE ROM CINÉMA C WHERE NOT EXISTS ( ROM ASSE WHERE.NUMC = C.NUMC AND NOT EXISTS ( ROM RÉCOMENSE_ILM R WHERE R.NUM =.NUM ) AND NOT EXISTS ( ROM RÉCOMENSE_ACTEUR RA WHERE RA.NUM =.NUM ) ) En SQL-2 par contre, on peut utiliser une union dans une sous-requête, ce qui simplifie son expression. orme imbriquée SQL-92 prédicat NOT EXISTS : SELECT NOM, VILLE ROM CINÉMA C WHERE NOT EXISTS ( ROM ASSE WHERE.NUMC = C.NUMC AND NOT EXISTS ( ROM ( ROM RÉCOMENSE_ILM UNION ROM RÉCOMENSE_ACTEUR ) AS R WHERE R.NUM =.NUM ) ) orme imbriquée SQL-92 prédicat NOT IN : SELECT NOM, VILLE ROM CINÉMA WHERE NUMC NOT IN ( SELECT NUMC ROM ASSE WHERE NUM NOT IN ( SELECT R.NUM ROM ( ROM RÉCOMENSE_ILM UNION ROM RÉCOMENSE_ACTEUR ) AS R ) ) ) Requête 26 : Donner le titre des films qui ont reçu au moins trois récompenses. orme imbriquée SQL-92 : SELECT TITRE, ANNÉE WHERE NUM IN ( SELECT R.NUM ROM ( ROM RÉCOMENSE_ILM UNION ROM RÉCOMENSE_ACTEUR ) AS R GROU BY R.NUM HAVING COUNT (*) >= 3 ) Corrigé du TD SQL (BD-ilmographie) 14

15 Requête 27 : Noms et prénoms des acteurs qui ont reçu plus de récompenses qu'aucun acteur qui a joué dans "Casablanca" n'en a eu. orme imbriquée SQL-92 : SELECT RÉNOM, NOM SELECT NUMA ROM RÉCOMENSE_ACTEUR GROU BY NUMA HAVING COUNT (*) > ( SELECT MAX ( SELECT COUNT (*) ROM RÉCOMENSE_ACTEUR WHERE NUMA IN ( SELECT NUMA ROM DISTRIBUTION WHERE NUM IN ( WHERE TITRE = Casablanca ) ) GROU BY NUMA ) ) ) Corrigé du TD SQL (BD-ilmographie) 15

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

Bases de données cours 4 Construction de requêtes en SQL. Catalin Dima

Bases de données cours 4 Construction de requêtes en SQL. Catalin Dima Bases de données cours 4 Construction de requêtes en SQL Catalin Dima Requêtes SQL et langage naturel Énoncés en langage naturel. Traduction en SQL? Correspondance entre syntagmes/phrases et opérations

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

1 Modélisation d une base de données pour une société de bourse

1 Modélisation d une base de données pour une société de bourse IN306 : Corrigé SID Christophe Garion 18 octobre 2010 Ce document est un corrigé succinct de l examen du module IN306. 1 Modélisation d une base de données pour une société de bourse Une

Plus en détail

Cours 4 : Agrégats et GROUP BY

Cours 4 : Agrégats et GROUP BY Cours 4 : Agrégats et GROUP BY Agrégat Fonction qui effectue un calcul sur l ensemble des valeurs d un attribut pour un groupe de lignes Utilisation dans une clause SELECT ou dans une clause HAVING 3 types

Plus en détail

TP base de données SQLite. 1 Différents choix possibles et choix de SQLite : 2 Définir une base de donnée avec SQLite Manager

TP base de données SQLite. 1 Différents choix possibles et choix de SQLite : 2 Définir une base de donnée avec SQLite Manager TP base de données SQLite 1 Différents choix possibles et choix de SQLite : La plupart des logiciels de gestion de base de données fonctionnent à l aide d un serveur. Ils demandent donc une installation

Plus en détail

TD : Requêtes SQL (BDR.TD2-1) INSA 3IF 2008-2009

TD : Requêtes SQL (BDR.TD2-1) INSA 3IF 2008-2009 TD : Requêtes SQL (BDR.TD2-1) INSA 3IF 2008-2009 Loïc Maisonnasse 1 Objectif Ce TD a pour objectif de vous familiariser avec le langage de requêtes SQL. Et de vous apprendre à écrire des requêtes SQL pour

Plus en détail

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

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

TP Bases de données réparties

TP Bases de données réparties page 1 TP Bases de données réparties requêtes réparties Version corrigée Auteur : Hubert Naacke, révision 5 mars 2003 Mots-clés: bases de données réparties, fragmentation, schéma de placement, lien, jointure

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

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

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

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

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

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

INSTITUT NATIONAL DES TELECOMMUNICATIONS CONTROLE DES CONNAISSANCES. 2. Les questions sont indépendantes les unes des autres.

INSTITUT NATIONAL DES TELECOMMUNICATIONS CONTROLE DES CONNAISSANCES. 2. Les questions sont indépendantes les unes des autres. INSTITUT NATIONAL DES TELECOMMUNICATIONS CONTROLE DES CONNAISSANCES Durée : 1h30 Date : 17/05/2006 Coordonnateurs : Amel Bouzeghoub et Bruno Defude Documents autorisés : ceux distribués en cours Avertissements

Plus en détail

Les Entrepôts de Données

Les Entrepôts de Données Les Entrepôts de Données Grégory Bonnet Abdel-Illah Mouaddib GREYC Dépt Dépt informatique :: GREYC Dépt Dépt informatique :: Cours Cours SIR SIR Systèmes d information décisionnels Nouvelles générations

Plus en détail

Systèmes de Gestion de Bases de Données

Systèmes de Gestion de Bases de Données Systèmes de Gestion de Bases de Données Luiz Angelo STEFFENEL DUT Informatique 2ème année IUT Nancy Charlemagne Vues Vue : une table virtuelle de la base de données dont le contenu est défini par une requête

Plus en détail

TD n 10 : Ma première Base de Données

TD n 10 : Ma première Base de Données TD n 10 : Ma première Base de Données 4 heures Rédigé par Pascal Delahaye 11 mars 2015 Le but de ce TD est de découvrirles principales fonctions d OpenOffice Base, le systèmede gestion de bases de données

Plus en détail

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

Notes de cours : bases de données distribuées et repliquées Notes de cours : bases de données distribuées et repliquées Loïc Paulevé, Nassim Hadj-Rabia (2009), Pierre Levasseur (2008) Licence professionnelle SIL de Nantes, 2009, version 1 Ces notes ont été élaborées

Plus en détail

Bases de données - Modèle relationnel

Bases de données - Modèle relationnel Bases de données - Modèle relationnel Introduction SITE :http://www.univ-orleans.fr/lifo/members/mirian.halfeld/ BD - Mírian Halfeld-Ferrari p. 1 Les bases de données - Bibliographie Ullman and Widom,

Plus en détail

CONCEPTION Support de cours n 3 DE BASES DE DONNEES

CONCEPTION Support de cours n 3 DE BASES DE DONNEES CONCEPTION Support de cours n 3 DE BASES DE DONNEES Auteur: Raymonde RICHARD PRCE UBO PARTIE III. - LA DESCRIPTION LOGIQUE ET PHYSIQUE DES DONNEES... 2 A. Les concepts du modèle relationnel de données...

Plus en détail

Cours Bases de données 2ème année IUT

Cours Bases de données 2ème année IUT Cours Bases de données 2ème année IUT Cours Bilan : Des vues à PL/SQL corrigé Anne Vilnat http://www.limsi.fr/individu/anne/cours Plan 1 Cas exemple 2 Les tables... 3 Vues et index 4 Privilèges 5 Fonctions

Plus en détail

Faciliter l adhésion à une complémentaire santé

Faciliter l adhésion à une complémentaire santé Faciliter l adhésion à une complémentaire santé la CPAM de l Oise aide financièrement les assurés qui en ont besoin 4 octobre 2011 Contacts presse : Françoise De Rocker 03 44 10 11 12 francoise.de-rocker@cpam-oise.cnamts.fr

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

Optimisation SQL. Quelques règles de bases

Optimisation SQL. Quelques règles de bases Optimisation SQL Quelques règles de bases Optimisation des ordres SQL Page 2 1. QUELQUES RÈGLES DE BASE POUR DES ORDRES SQL OPTIMISÉS...3 1.1 INTRODUCTION...3 1.2 L OPTIMISEUR ORACLE...3 1.3 OPTIMISEUR

Plus en détail

INTRODUCTION : Données structurées et accès simplifié

INTRODUCTION : Données structurées et accès simplifié INTRODUCTION : Données structurées et accès simplifié À l'origine de l'informatique, le stockage d'information se faisait sur cartes perforées. Ces supports pauvres ne permettaient pas de définir la structuration

Plus en détail

Durée : 4 heures Le sujet se présente sous la forme de deux dossiers indépendants

Durée : 4 heures Le sujet se présente sous la forme de deux dossiers indépendants ÉPREUVE E5 : ANALYSE DE GESTION ET ORGANISATION DU SYSTÈME D INFORMATION Durée : 4 heures Le sujet se présente sous la forme de deux dossiers indépendants Page de garde... p 1 Présentation de l entreprise...

Plus en détail

F411 - Courbes Paramétrées, Polaires

F411 - Courbes Paramétrées, Polaires 1/43 Courbes Paramétrées Courbes polaires Longueur d un arc, Courbure F411 - Courbes Paramétrées, Polaires Michel Fournié michel.fournie@iut-tlse3.fr http://www.math.univ-toulouse.fr/ fournie/ Année 2012/2013

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

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

Bases de données. PTSI Lycée Eiffel. 28 février 2014

Bases de données. PTSI Lycée Eiffel. 28 février 2014 Bases de données PTSI Lycée Eiffel 28 février 2014 Introduction Pour ce troisième chapître, nous allons mettre de côté notre apprentissage de Pyhton pour nous intéresser à un sujet fondamental dans l informatique

Plus en détail

Utiliser les supports d'exemplaires

Utiliser les supports d'exemplaires Utiliser les supports d'exemplaires Fiche technique PMB n 2.4.1 Les supports d'exemplaires permettent de définir des groupes de documents et de moduler les durées de prêt (quotas) pour ces différents groupes

Plus en détail

SQL Server et Active Directory

SQL Server et Active Directory SQL Server et Active Directory Comment requêter AD depuis SQL Server Comment exécuter des requêtes de sélection sur un Active Directory depuis SQL Server? L'utilisation du principe des serveurs liés adapté

Plus en détail

ISC21-1 --- Système d Information Architecture et Administration d un SGBD Compléments SQL

ISC21-1 --- Système d Information Architecture et Administration d un SGBD Compléments SQL ISC21-1 --- Système d Information Architecture et Administration d un SGBD Compléments SQL Jean-Marie Pécatte jean-marie.pecatte@iut-tlse3.fr 16 novembre 2006 ISIS - Jean-Marie PECATTE 1 Valeur de clé

Plus en détail

Resolution limit in community detection

Resolution limit in community detection Introduction Plan 2006 Introduction Plan Introduction Introduction Plan Introduction Point de départ : un graphe et des sous-graphes. But : quantifier le fait que les sous-graphes choisis sont des modules.

Plus en détail

Exercices et solutions

Exercices et solutions Ce document constitue l annexe A de l ouvrage "Bases de données", J-L Hainaut, Dunod, 2012 Date de dernière modification : 8/6/2012 Annexe A A1 Exercices et solutions Cette annexe propose une collection

Plus en détail

Bases de Données. Le cas des BD relationnelles ouverture sur les BD relationnelles spatiales Séance 2 : Mise en oeuvre

Bases de Données. Le cas des BD relationnelles ouverture sur les BD relationnelles spatiales Séance 2 : Mise en oeuvre Bases de Données Le cas des BD relationnelles ouverture sur les BD relationnelles spatiales Séance 2 : Mise en oeuvre Synthèse : conception de BD langage de modélisation famille de SGBD SGBD Analyse du

Plus en détail

SQL. Oracle. pour. 4 e édition. Christian Soutou Avec la participation d Olivier Teste

SQL. Oracle. pour. 4 e édition. Christian Soutou Avec la participation d Olivier Teste Christian Soutou Avec la participation d Olivier Teste SQL pour Oracle 4 e édition Groupe eyrolles, 2004, 2005, 2008, 2010, is BN : 978-2-212-12794-2 Partie III SQL avancé La table suivante organisée en

Plus en détail

Série TD 3. Exercice 4.1. Exercice 4.2 Cet algorithme est destiné à prédire l'avenir, et il doit être infaillible! Exercice 4.3. Exercice 4.

Série TD 3. Exercice 4.1. Exercice 4.2 Cet algorithme est destiné à prédire l'avenir, et il doit être infaillible! Exercice 4.3. Exercice 4. Série TD 3 Exercice 4.1 Formulez un algorithme équivalent à l algorithme suivant : Si Tutu > Toto + 4 OU Tata = OK Alors Tutu Tutu + 1 Tutu Tutu 1 ; Exercice 4.2 Cet algorithme est destiné à prédire l'avenir,

Plus en détail

Plan. Bases de Données. Sources des transparents. Bases de SQL. L3 Info. Chapitre 4 : SQL LDD Le langage de manipulation de données : LMD

Plan. Bases de Données. Sources des transparents. Bases de SQL. L3 Info. Chapitre 4 : SQL LDD Le langage de manipulation de données : LMD Plan Bases de Données L3 Info Céline Rouveirol 2010-2011 Bases de Données 1 / 77 Sources des transparents Bases de Données 2 / 77 Bases de SQL - M.P. Dorville/F. Goasdoué, LRI, Université Paris Sud - V.

Plus en détail

Vincent Augusto 2010-2011

Vincent Augusto 2010-2011 le des Systèmes Vincent Augusto École Nationale Supérieure des Mines de Saint-Étienne 2010-2011 Un 1/73 le des Un 2/73 1 2 3 4 le 5 6 7 8 Un le des Un 3/73 Contenu du cours : Techniques pour l analyse

Plus en détail

Dérivation : Résumé de cours et méthodes

Dérivation : Résumé de cours et méthodes Dérivation : Résumé de cours et métodes Nombre dérivé - Fonction dérivée : DÉFINITION (a + ) (a) Etant donné est une onction déinie sur un intervalle I contenant le réel a, est dérivable en a si tend vers

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

25/01/05 TD Entrepôt de données IHS / Master ICA

25/01/05 TD Entrepôt de données IHS / Master ICA Une compagnie d assurance de biens (automobile, immobilier, responsabilité civile) possède une application transactionnelle de production permet de gérer les polices (contrats) de ses clients ainsi que

Plus en détail

Initiation à Excel. Frédéric Gava (MCF) gava@univ-paris12.fr

Initiation à Excel. Frédéric Gava (MCF) gava@univ-paris12.fr Initiation à Excel Frédéric Gava (MCF) gava@univ-paris12.fr LACL, bâtiment P2 du CMC, bureau 221 Université de Paris XII Val-de-Marne 61 avenue du Général de Gaulle 94010 Créteil cedex Plan de cette année

Plus en détail

Bases de Données Relationnelles. Le Modèle Relationnel

Bases de Données Relationnelles. Le Modèle Relationnel Bases de Données Relationnelles Le Modèle Relationnel Le modèle relationnel modèle de niveau logique modèle simple : deux concepts relation (table) attribut (colonne) défini par Ted Codd en 1970 ; prix

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

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

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

Groupe 11 TABLE DES MATIERES

Groupe 11 TABLE DES MATIERES Groupe 11 TABLE DES MATIERES I. CHAMP D APPLICATION a) Domaine b) Objectif c) Constituants II. II. II. II. II. II. II. IX. IX. REMARQUES CONCERNANT LES IDENTIFICATEURS DOMAINE «SQL» DES CONSTITUANTS PREDICAT

Plus en détail

Pascale Borla-Salamet Consultante Avant Vente Oracle France. Oracle Exadata Performance et Optimisation de votre Datawarehouse

Pascale Borla-Salamet Consultante Avant Vente Oracle France. Oracle Exadata Performance et Optimisation de votre Datawarehouse Pascale Borla-Salamet Consultante Avant Vente Oracle France Oracle Exadata Performance et Optimisation de votre Datawarehouse Agenda Les nouveaux challenges Exadata Storage Server Oracle Database Machine

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

BAREME sur 40 points. Informatique - session 2 - Master de psychologie 2006/2007

BAREME sur 40 points. Informatique - session 2 - Master de psychologie 2006/2007 BAREME ur 40 point Informatique - eion 2 - Mater de pychologie 2006/2007 Bae de donnée PRET de MATERIEL AUDIO VISUEL. Remarque : Le ujet comporte 7 page. Vérifier qu il et complet avant de commencer. Une

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

Le Chèque emploi service universel en quelques mots

Le Chèque emploi service universel en quelques mots Le Chèque emploi service universel en quelques mots Qu'est-ce que le Chèque emploi service universel? Créé dans le cadre de la politique conduite pour favoriser les services à la personne (plan de développement

Plus en détail

Auto-évaluation SQL. Document: f0453test.fm 19/04/2012. ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium

Auto-évaluation SQL. Document: f0453test.fm 19/04/2012. ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium Auto-évaluation SQL Document: f0453test.fm 19/04/2012 ABIS Training & Consulting P.. Box 220 B-3000 Leuven Belgium TRAINING & CNSULTING INTRDUCTIN AUT-ÉVALUATIN SQL Indications d utilisation Ce test est

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

COMPTABILITÉ ET FINANCE D ENTREPRISE

COMPTABILITÉ ET FINANCE D ENTREPRISE 1/8 COMPTABILITÉ ET FINANCE D ENTREPRISE Classe terminale de la série Sciences et technologies de la gestion Spécialité «Comptabilité et finance d entreprise» I. INDICATIONS GÉNÉRALES Les horaires indicatifs

Plus en détail

Développements limités, équivalents et calculs de limites

Développements limités, équivalents et calculs de limites Développements ités, équivalents et calculs de ites Eercice. Déterminer le développement ité en 0 à l ordre n des fonctions suivantes :. f() e (+) 3 n. g() sin() +ln(+) n 3 3. h() e sh() n 4. i() sin(

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

Durée : 4 heures coefficient : 4 Le sujet se présente sous la forme de deux dossiers indépendants

Durée : 4 heures coefficient : 4 Le sujet se présente sous la forme de deux dossiers indépendants ÉPREUVE E5 : ANALYSE DE GESTION ET ORGANISATION DU SYSTÈME D INFORMATION Durée : 4 heures coefficient : 4 Le sujet se présente sous la forme de deux dossiers indépendants Page de garde... p 1 Présentation

Plus en détail

Base de données relationnelle et requêtes SQL

Base de données relationnelle et requêtes SQL Base de données relationnelle et requêtes SQL 1e partie Anne-Marie Cubat Une question pour commencer : que voyez-vous? Cela reste flou Les plans de «Prison Break»? Non, cherchons ailleurs! Et de plus près,

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

CRÉER UNE BASE DE DONNÉES AVEC OPEN OFFICE BASE

CRÉER UNE BASE DE DONNÉES AVEC OPEN OFFICE BASE CRÉER UNE BASE DE DONNÉES AVEC OPEN OFFICE BASE 2 ème partie : REQUÊTES Sommaire 1. Les REQUÊTES...2 1.1 Créer une requête simple...2 1.1.1 Requête de création de listage ouvrages...2 1.1.2 Procédure de

Plus en détail

Gestion des utilisateurs et de leurs droits

Gestion des utilisateurs et de leurs droits Gestion des utilisateurs et de leurs droits Chap. 12, page 323 à 360 Lors de la création d'un utilisateur vous devez indiquer son nom, ses attributs, son profil, la méthode d'authentification (par le SE

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

Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework

Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework L'objectif de ce document est de poser des bases de réflexion sur la modélisation d'un projet réalisé

Plus en détail

MySQL / SQL EXEMPLES

MySQL / SQL EXEMPLES MySQL_exemples_janv04_mpT EXEMPLES 1 MySQL / SQL EXEMPLES Typologie du langage Il est possible d'inclure des requêtes SQL dans un programme écrit dans un autre langage (en langage C par exemple), ainsi

Plus en détail

CAISSE ENREGISTREUSE ELECTRONIQUE SE-G1

CAISSE ENREGISTREUSE ELECTRONIQUE SE-G1 AISSE ENREGISTREUSE ELETRONIQUE SE-G PROGRAMMATION SIMPLIFIEE 20/0/204 SOMMAIRE PROGRAMMATION SIMPLIFIEE.... Introduction... 2. Programmation... 4 Initialisation de la caisse :... 4 Programmation de base

Plus en détail

TP Administration Oracle

TP Administration Oracle Ingénieurs 2000 Informatique et Réseaux TP Administration Oracle DIOP Ngoné ESSAIDI Abderrahim Février 2008 1 Sommaire Sommaire... 2 Introduction... 3 1. Déploiement d application... 4 1.1 Résumé du besoin...

Plus en détail

Bases de données. Yamine AIT AMEUR. INPT-ENSEEIHT DIMA 2 Rue Charles Camichel 31071 Toulouse Cedex 7

Bases de données. Yamine AIT AMEUR. INPT-ENSEEIHT DIMA 2 Rue Charles Camichel 31071 Toulouse Cedex 7 Bases de données Yamine AIT AMEUR INPT-ENSEEIHT DIMA 2 Rue Charles Camichel 31071 Toulouse Cedex 7 Première partie Introduction 1 Généralités et notions de base Première partie Introduction 1 Généralités

Plus en détail

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

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

Plus en détail

Évaluation et optimisation de requêtes

Évaluation et optimisation de requêtes Évaluation et optimisation de requêtes Serge Abiteboul à partir de tranparents de Philippe Rigaux, Dauphine INRIA Saclay April 3, 2008 Serge (INRIA Saclay) Évaluation et optimisation de requêtes April

Plus en détail

L équilibre Ressources Emplois de biens et services schématisé par une balance

L équilibre Ressources Emplois de biens et services schématisé par une balance IV) l équilibre ressources - emplois et son interprétation Cet article fait suite à ceux du 19 janvier et du 18 février 2013. Il en est le complément logique sur les fondamentaux macro- économiques d un

Plus en détail

Corrigé Exercice 1 : BRIDE HYDRAULIQUE AVEC HYPOTHÈSE PROBLÈME PLAN.

Corrigé Exercice 1 : BRIDE HYDRAULIQUE AVEC HYPOTHÈSE PROBLÈME PLAN. TD 6 corrigé - PFS Résolution analytique (Loi entrée-sortie statique) Page 1/1 Corrigé Exercice 1 : BRIDE HYDRAULIQUE AVEC HYPOTHÈSE PROBLÈME PLAN. Question : Réaliser le graphe de structure, puis compléter

Plus en détail

Utilité et nécessité de disposer d une bonne politique de mot de passe.

Utilité et nécessité de disposer d une bonne politique de mot de passe. Utilité et nécessité de disposer d une bonne politique de mot de passe. Chaque utilisateur de PC est identifié dans son CPAS par deux éléments : 1. son UID (user identification), c'est-à-dire son nom d

Plus en détail

Media Pack. À propos de nous. Statistiques par mois. Pourquoi préférer IT Job Board? Références

Media Pack. À propos de nous. Statistiques par mois. Pourquoi préférer IT Job Board? Références Media Pack À propos de nous IT Job Board a été créé en 2002 en Angleterre et est devenu l un des grands spécialistes dans la recherche et la sélection de personnel IT en Europe. Avec en moyenne un peu

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

Présentation Windows Azure Hadoop Big Data - BI

Présentation Windows Azure Hadoop Big Data - BI Présentation Windows Azure Hadoop Big Data - BI Sommaire 1. Architecture Hadoop dans Windows Azure... 3 2. Requête Hive avec Hadoop dans Windows Azure... 4 3. Cas d études... 5 3.1 Vue : Administrateur...

Plus en détail

Bases de données multidimensionnelles et mise en œuvre dans Oracle

Bases de données multidimensionnelles et mise en œuvre dans Oracle Bases de données multidimensionnelles et mise en œuvre dans Oracle 1 Introduction et Description générale Les bases de données relationnelles sont très performantes pour les systèmes opérationnels (ou

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

Chapitre 5 LE MODELE ENTITE - ASSOCIATION

Chapitre 5 LE MODELE ENTITE - ASSOCIATION Chapitre 5 LE MODELE ENTITE - ASSOCIATION 1 Introduction Conception d une base de données Domaine d application complexe : description abstraite des concepts indépendamment de leur implémentation sous

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

Oracle Décisionnel : Modèle OLAP et Vue matérialisée D BILEK

Oracle Décisionnel : Modèle OLAP et Vue matérialisée D BILEK Oracle Décisionnel : Modèle OLAP et Vue matérialisée SOMMAIRE Introduction Le modèle en étoiles Requêtes OLAP Vue matérialisée Fonctions Roll up et Cube Application Introduction Data Warehouse Moteur OLAP

Plus en détail

Quelques aspects du Relationnel-Objet du SGBD Oracle

Quelques aspects du Relationnel-Objet du SGBD Oracle Département informatique de l IUT (de l université) de Bordeaux Cours de Bases de Données : présentation partielle d un SGBD RO 12 août 2015 Olivier Guibert Quelques aspects du Relationnel-Objet du SGBD

Plus en détail

M&S Automation. Analyse Statistiques Qualité. Ingénierie de l information. acquisition et stockage des données. analyse des données

M&S Automation. Analyse Statistiques Qualité. Ingénierie de l information. acquisition et stockage des données. analyse des données M&S Automation Ingénierie de l information Analyse Statistiques Qualité acquisition et stockage des données analyse des données maîtrise statistique des procédés gestion de la qualité et traçabilité Une

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

Chapitre 3 LE MODELE RELATIONNEL ET SQL (DDL)

Chapitre 3 LE MODELE RELATIONNEL ET SQL (DDL) Chapitre 3 LE MODELE RELATIONNEL ET SQL (DDL) Un modèle de données définit un mode de représentation de l information selon trois composantes : 1. Des structures de données. 2. Des contraintes qui permettent

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

Expression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e

Expression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e P r o b l é m a t i q u e OCL : O b j e c t C o n s t r a i n t L a n g u a g e Le langage de contraintes d UML Les différents diagrammes d UML permettent d exprimer certaines contraintes graphiquement

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

Glossaire suivi SEO. Glossaire suivi SEO. Document : Suivi SEO. Projet : Date : 18/02/15. Version : 1

Glossaire suivi SEO. Glossaire suivi SEO. Document : Suivi SEO. Projet : Date : 18/02/15. Version : 1 Glossaire suivi SEO Document : Projet : Glossaire suivi SEO Suivi SEO Date : 18/02/15 Version : 1 G4interactive SAS 53, rue des deux communes 93100 Montreuil, France contact@myposeo.com Table des matières

Plus en détail

PHP. Bertrand Estellon. 26 avril 2012. Aix-Marseille Université. Bertrand Estellon (AMU) PHP 26 avril 2012 1 / 214

PHP. Bertrand Estellon. 26 avril 2012. Aix-Marseille Université. Bertrand Estellon (AMU) PHP 26 avril 2012 1 / 214 PHP Bertrand Estellon Aix-Marseille Université 26 avril 2012 Bertrand Estellon (AMU) PHP 26 avril 2012 1 / 214 SQLite et PDO Base de données SQLite et PDO SQLite écrit les données relatives à la base dans

Plus en détail

S8 - INFORMATIQUE COMMERCIALE

S8 - INFORMATIQUE COMMERCIALE S8 - INFORMATIQUE COMMERCIALE Les savoirs de l Informatique Commerciale doivent être abordés en relation avec les autres savoirs (S4 à S7). Les objectifs généraux sont : o de sensibiliser les étudiants

Plus en détail

Proposition de crédit

Proposition de crédit Helvetia Compagnie Suisse d Assurances sur la Vie SA, Bâle Helvetia Compagnie Suisse d Assurances SA, Saint-Gall Proposition de crédit 1 er preneur de prêt (débiteur principal) Indications sur la personne

Plus en détail

BTS/CGO P10 SYSTEME INFORMATION Année 2012-2013

BTS/CGO P10 SYSTEME INFORMATION Année 2012-2013 BTS/CGO P10 SYSTEME INFORMATION Année 2012-2013 TS2 CGO 7 mars 2013 2 heures Aucun document autorisé Calculatrice autorisée Nota : Il vous est demandé d apporter un soin particulier à la présentation de

Plus en détail

Master Exploration Informatique des données DataWareHouse

Master Exploration Informatique des données DataWareHouse Master Exploration Informatique des données DataWareHouse Binôme Ahmed BENSI Enseignant tahar ARIB SOMMAIRE I. Conception...1 1. Contexte des contrats...1 2. Contexte des factures...1 II. Modèle physique...2

Plus en détail