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

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

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

Le Langage De Description De Données(LDD)

CREATION WEB DYNAMIQUE

Chapitre 3 LE MODELE RELATIONNEL ET SQL (DDL)

I4 : Bases de Données

Création et Gestion des tables

Bases de données relationnelles

1/ Présentation de SQL Server :

Introduction au Système de Gestion de Base de Données et aux Base de Données

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

Chapitre 5 LE MODELE ENTITE - ASSOCIATION

Cours: Administration d'une Base de Données

Olivier Mondet

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

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

1 Position du problème

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

Bases de données et sites WEB

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

TP Contraintes - Triggers

Licence de MIDO - 3ème année Spécialités Informatique et Mathématiques Appliquées

Langage SQL : créer et interroger une base

Bases de Données Avancées

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

Historisation des données

TP3 : Creation de tables 1 seance

Intégrité des données

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

SQL sous SqlServer OLIVIER D. DEHECQ Olivier 0

A QUOI SERVENT LES BASES DE DONNÉES?

1. Qu'est-ce que SQL? La maintenance des bases de données Les manipulations des bases de données... 5

SQL Historique

DEVAKI NEXTOBJET PRESENTATION. Devaki Nextobjects est un projet sous license GNU/Public.

Intégrité sémantique dans les bases de données relationnelles

Bases de données élémentaires Maude Manouvrier

Information utiles. webpage : Google+ : digiusto/

Les bases de données

Partie II Cours 3 (suite) : Sécurité de bases de données

Système de Gestion de Bases de Données Relationnelles. MySQL. Youssef CHAHIR

NF26 Data warehouse et Outils Décisionnels Printemps 2010

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

Le Langage SQL version Oracle

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

Les BASES de DONNEES dans WampServer

Partie 0 : Gestion des tablespace et des utilisateurs... 3

1 Introduction et installation

Les Triggers SQL. Didier DONSEZ. Université de Valenciennes Institut des Sciences et Techniques de Valenciennes

Application web de gestion de comptes en banques

Initiation à SQL. Le langage de communication avec une base de données relationnelles. Application avec PostgreSQL. Nathalie Camelin 2011/2012

I. MySQL : Serveur et SGBD

Objectifs du TP : Initiation à Access

16H Cours / 18H TD / 20H TP

Modélisation et Gestion des bases de données avec mysql workbench

Systèmes de Gestion de Bases de Données

Construction d un EDD avec SQL 2008 R2. D. Ploix - M2 Miage - EDD - Création

1. Base de données SQLite

Bases de Données. Plan

MySQL / SQL EXEMPLES

Techniques de stockage. Techniques de stockage, P. Rigaux p.1/43

Bases de données relationnelles & SQL

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

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

Auto-évaluation Oracle: cours de base

INTEGRITE ET BD ACTIVES

OpenPaaS Le réseau social d'entreprise

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

UML et les Bases de Données

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

Compétences Business Objects

Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS

Introduction aux Bases de Données

BASES DE DONNEES TP POSTGRESQL

ISC Système d Information Architecture et Administration d un SGBD Compléments SQL

Administration des bases de données. Jean-Yves Antoine

Gestion des transactions et accès concurrents dans les bases de données relationnelles

Architectures, modèles et langages de données

Les bases de données Page 1 / 8

Optimisations des SGBDR. Étude de cas : MySQL

A QUOI SERVENT LES BASES DE DONNÉES?

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

Bases de données et sites WEB Licence d informatique LI345

LE LANGAGE SQL2 1. INTRODUCTION

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

Mejdi BLAGHGI & Anis ASSÈS

Pratique et administration des systèmes

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

PROJET 1 : BASE DE DONNÉES REPARTIES

La programmation orientée objet Gestion de Connexions HTTP Manipulation de fichiers Transmission des données PHP/MySQL. Le langage PHP (2)

WEB DEVELOPER SGBD SYSTEME DE GESTION DE BASES DE DONNEES L étudiant sera capable :

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

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

Bases de données Oracle Virtual Private Database (VPD) pour la gestion des utilisateurs d applications

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

OFPPT ISTA BM. Base de données. Filière : TSTDI

Gestion de base de données

Rappel sur les bases de données

Cours SGBD 1. Concepts et langages des Bases de Données Relationnelles

Bases de données - Modèle relationnel

Transcription:

Nadi Tomeh Slides par Amélie Gheerbrant

SQL SQL permet d interroger et de créer, de modifier et de supprimer des bases de données et des données. SQL query : interrogation de données pas de modification dans la BD SQL-DDL : création, modification et suppression de schémas création, modification et suppression de schémas de relation définition de clés et d autres contraintes SQL-DML : création, modification et suppression de données insertion, modification et suppression de n-uplets 2 / 14

SQL DDL DDL = Data Definition Language, permet de spécifier le schéma d une base de données Le schéma de chaque relation Le domaine des valeurs associées à chaque attribut Les contraintes d intégrité D autres informations concernant le stockage physiques sur disque, la sécurité et les autorisations ( nous ne verrons pas ça ici) 3 / 14

Quelques types d attributs SQL courants int : entier ; bool : booléen ; real : réel ; date : date ; time : heure ; numeric(precision, echelle) : décimaux où echelle est le nombre de chiffres après la virgule et precision le nombre de chiffres totaux ; text : chaîne de caractères ; varchar(longueur) : chaîne d au plus longueur caractères ; serial : entier à incrémentation automatique. 4 / 14

La commande Create Table Pour créer une relation SQL on utilise la commande Create Table : Create Table R(A 1 D 1, A 2 D 2,..., A n D n, (contrainte_intégrité 1 ),..., (contrainte_intégrité n )) ; R est le nom de la relation chaque A i est un nom d attribut du schéma de la relation R D i est le domaine de l attribut A i pour chaque 1 i n (NB : une commande SQL se termine toujours par un point virgule) 5 / 14

Exemple : définition de la relation Pilote Create Table Pilote (Plnum int, Plnom text, Plprenom text, Ville text, Salaire int, Primary Key Plnum) ; D autres types auraient pu être choisis (e.g., varchar(30) pour Plnom) Primary Key Plnum = déclaration de la clef primaire de la table Pilote. 6 / 14

Contraintes d intégrité Une contrainte d intégrité est une condition (logique) qui doit être satisfaite par les données stockées dans la BD. But : maintenir la cohérence / l intégrité de la BD Vérifier / valider automatiquement (en dehors de l application) les données lors des mises-à-jour (insertion, modification, effacement) Déclencher automatiquement des mises-à-jour entre tables pour maintenir la cohérence globale. 7 / 14

Contraintes d attributs PRIMARY KEY (<attributs>) désigne un ensemble d attributs comme la clé primaire de la table FOREIGN KEY (attributs) REFERENCES <table> désigne un ensemble d attributs comme la clé étrangère dans une contrainte référentielle <attribut> NOT NULL spécifie qu un attribut doit être renseigné UNIQUE (<attributs>) spécifie un ensemble d attributs dont les valeurs doivent être distinctes pour chaque couple de n-uplets ( clef mais peut être nul et ne permet pas d identifier un n-uplet) 8 / 14

Clefs primaires : remarque Create Table Pilote (Plnum int, Plnom text, Plprenom text, Ville text, Salaire int, Primary Key Plnum) ; PRIMARY KEY implique UNIQUE et NOT NULL. 9 / 14

Exemple : clefs et clefs étrangères Relations : Pilote(Plnum, Plnom, Plprenom, Ville, Salaire), Avion(Avnum,Avnom,Capacité, Localisation), Vol(Volnum, Plnum, Avnum, Villedep, Villearr,Heuredep,Heurear) CREATE TABLE Vol (Volnum int, Plnum text, Avnum text, Villedep text, Villearr int, Heuredep, Heurearr, PRIMARY KEY Volnum), FOREIGN KEY (Plnum) REFERENCES Pilote(Plnum), FOREIGN KEY (Avnum) REFERENCES Avion(Avnum)) ; 10 / 14

La clause CHECK CHECK (P), où P est une condition Exemple : CHECK (salaire >= 20000) Ajouté lors de la création de la relation Vol, permet d assurer un salaire minimum à tous les pilotes. 11 / 14

Exemple plus complexe (au tableau) 12 / 14

La commande DROP TABLE DROP TABLE R <RESTRICT, CASCADE> ; Restrict (par défaut) : supprime R seulement si elle n est référencée par aucune autre contrainte (clé étrangère) ou vue Cascade : supprime aussi toutes les tables qui dépendent de R Utilisé pour supprimer une relation ET sa définition (schéma) On ne peut plus utiliser la relation dans les requêtes, mises-à-jours, ou toute autre commande, puisque sa description n existe plus. Exemple : DROP TABLE Vol ; DROP TABLE Pilote ; (Attention, Vol devra ici être supprimée avant Pilote.) 13 / 14

La commande ALTER TABLE ALTER TABLE R ADD A D ; Utilisé pour ajouter un attribut A de domaine D à une relation existante On assigne par défaut à tous les tuples de la relation la valeur nulle pour le nouvel attribut. Peut aussi (sur certains SGBD) être utilisé pour supprimer un attribut dans une relation : ALTER TABLE R DROP A ; 14 / 14