Initiation aux bases de données et à la programmation événementielle

Slides:



Advertisements
Présentations similaires
Bases de Données Avancées: Bases de Données Relationnelles
Advertisements

Access Frédéric Gava (MCF)
Bureautique Excel-VBA et Access – Cours 3
Vocabulaire pour la passage du modèle conceptuel des données au modèle relationnel des données. MCDMRD EntitéTable PropriétésChamps, attribut IdentifiantClé
SGBD – Oracle Cours BD LF2 info
Initiation aux bases de données et à la programmation événementielle
Année universitaire Système dinformation Le SQL (Structured Query Language) langage dinterrogation dune base de données.
LE LANGAGE SQL : LDD La création de tables L’ordre CREATE CREATE TABLE nom_de_table (Nom_colonne Type_colonne, Nom_colonne Type_colonne,
Initiation au système d’information et aux bases de données
Initiation à la conception des systèmes d'informations
Développement d’applications web
Faculté I&C, Claude Petitpierre, André Maurer Bases de données SQL (Structured Query Language)
L’utilisation des bases de données
Rappel sur les bases de données et le vocabulaire
Initiation aux bases de données et à la programmation événementielle
1 Initiation aux bases de données et à la programmation événementielle Cours N°9 : Gestion de la cohérence avec des sous-formulaires. Support de cours.
Le modèle relationnel.
L’utilisation des bases de données
SQL partie3: Langage de définition des données
Création de bases de données
Management of Information Technology - e-business
Initiation aux bases de données et à la programmation événementielle
Initiation aux bases de données et à la programmation événementielle
Initiation aux bases de données et à la programmation événementielle
Initiation aux bases de données et à la programmation événementielle
Initiation aux bases de données et à la programmation événementielle
SQL Partie 1.
SQL partie 3. SQL est un langage de définition de données SQL est un langage de définition de données (LDD), c'est-à-dire qu'il permet de créer des tables.
Chap 4.5 : SQL (LDD) LDD : Langage de définition de données Réfs : Manuel p105.
Initiation aux bases de données et à la programmation événementielle Cours N°3 : langage de manipulation de données. Support de cours de Souheib BAARIR.
PROGRAMMATION INFORMATIQUE D’INGÉNIERIE II PRO-1024.
PostgreSQL – Présentation
DEFINITION DES DONNEES : schéma conceptuel. Schéma conceptuel instructiondescription CREATE TABLEcréation d'une relation ALTER TABLEmodification de la.
Module 4 : Implémentation de l'intégrité des données.
Les Contraintes.
SQL : Langage de Manipulation des données
1 Initiation aux bases de données et à la programmation événementielle Responsable : Souheib BAARIR. (le sujet de votre .
21/04/2015© Robert Godin. Tous droits réservés.1 6Gestion des contraintes d’intégrité en SQL n Contrainte d'intégrité statique – respectée pour chacun.
Quinio1 Bases de données : modèlisation et SGBD Séance 3 B Quinio.
Création et Gestion de Tables
 Le langage SQL Introduction SQL : Strutured Query Language, est un langage de requête, que l'on retrouve dans divers SGBDR (Access de Microsoft, MySQL,
Le Langage de Définition de Données LDD
Cours n°4M1.ist-ie (S. Sidhom) UE 203 Promo. M1 IST-IE 2006/07 Conception d’un système d'information sur Internet Architecture trois-tiers : technologies.
Les vues Une vue: c’est une relation virtuelle. Définie par:
13 Copyright © Oracle Corporation, Tous droits réservés. Gérer l'intégrité des données.
 L’information est conservée sous forme de tables  Contient: ◦ Un nom ◦ Une clé primaire ◦ Une liste de colonnes ◦ Les informations/données (sous forme.
Cours Access TuanLoc NGUYEN. Contact Nguyen TuanLoc Tél: Web:
06/04/06 LES BASES DE DONNEES INTRODUCTION CogniTIC – Bruxelles Formation - Cepegra.
Structured Query Language 1/34. SQL Types de données Langage de Définition de Données (LDD) Langage de Manipulation de Données (LDM) Langage de Contrôle.
Les bases de données Séance 8 Jointures.
Le langage SQL.
Séance /10/2004 SGBD - Approches & Principes.
Initiation aux bases de données et à la programmation événementielle Cours N°2 : langage d’interrogation de données. (Les requêtes statistiques et autres).
Initiation aux bases de données et à la programmation événementielle
1 Initiation aux bases de données et à la programmation événementielle Cours N°8 : Gestion de la cohérence avec des zones de liste déroulantes. Souheib.
INTRODUCTION AUX BASES DE DONNEES Base et métabase
Cours n°2 Implémentation et exploitation
Bases de données – Cours 3
Le langage SQL LA Plan 1. Introduction Rappels sur le modèle relationnel Les caractéristiques du langage SQL 2. Le Langage d'Interrogation des.
Les bases de données Séance 4 Construction du Modèle Physique (la BDD)
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 4 Support de cours rédigé par Bernard COFFIN Université.
1 Les bases de données Séance 5 -- Le Langage de Définition de Données ou la manœuvre de la structure de la base -- Le Langage de Manœuvre de Données.
Formation SGA Module Saisie des Demandes d’achat Durée : 0,5 jour.
Le langage de définition de données B.T.S. S.I.O – SI3 –
Généralité sur les bases de données
1. LE LANGAGE SQL DDL Version 2 - Janvier Le langage SQL-DDL
1. LE LANGAGE SQL DDL Version 1 - Mai 2009 corrigé le 11/2/2011
Transcription de la présentation:

Initiation aux bases de données et à la programmation événementielle Cours N°4 : Langage de Définition de Données. Souheib BAARIR. Page web : http://pagesperso-systeme.lip6.fr/Souheib.Baarir/bdvba/support.htm E-mail : souheib.baarir@u-paris10.fr Université Paris Ouest Nanterre la Défense.

Tables Vs. Schémas des tables Une base de données comporte des Tables (relations), dont les formats sont décrits par les Schémas des tables… La plupart des SGBD permettent de créer ces schémas de manière interactive à l’aide de fenêtres de dialogue et d’assistants (Access, Query,…). Cependant, SQL prévoit des instructions particulières pour gérer les schémas…C’est ce qu’on appel le Langage de Définition de Données (LDD).

LDD en SQL Plusieurs types de requêtes : d’interrogation (LID). de manipulation (LMD). de définition (LDD). CREATE TABLE… : créer une table. ALTER TABLE… : modifier une table. DROP TABLE… : supprimer une table.

syntaxe générale (simplifiée) Création de table : syntaxe générale (simplifiée) La création d’une table est prévue en SQL via l’instruction CREATE TABLE. CREATE TABLE table ( champ1 type [(taille)] [NOT NULL] [,champ2 type [(taille)] [NOT NULL]]* [,CONSTRAINT nom  PRIMARY KEY (champi [, champj [, …]]) | UNIQUE (champk [, champl [, …]]) |   FOREIGN KEY (champm [, champn [, …]]) REFERENCES tableE [(champE1 [,champE2 [, …]])]]* )

Création de table : types de données Un type de données définit le genre de contenu d'un champ. les opérations pouvant être effectuées sur ce champ. Trois catégories de types : Les valeurs numériques. Bit,YesNo,… Numeric, Short, Int, Real, Double,… Autoincrement,… Les dates et les heures. Date. Time.  Les chaînes de caractères. Text, Memo,… Char,…

Création de table : Premier exemple CREATE TABLE article ( [code article] Autoincrement NOT NULL, [prix article] INT, [date fabrication] DATE, CONSTRAINT a1 PRIMARY KEY ([code article]) )

Intégrité référentielle Création de table : Intégrité référentielle La clause FOREIGN KEY permet, pour les valeurs du champ indiqué, de faire référence à des valeurs existantes dans un champ d'une autre table. Ce mécanisme s'appelle intégrité référentielle. Une valeur insérée dans le champ [référence fournisseur] de la table article doit obligatoirement exister comme clé primaire de la table fournisseur (le champ [N° Siret]) CREATE TABLE article ( [code article] Autoincrement NOT NULL, [prix article] INT, [date fabrication] DATE, [référence fournisseur] INT NOT NULL, CONSTRAINT a1 PRIMARY KEY ([code article]), CONSTRAINT a2 FOREIGN KEY ([référence fournisseur]) REFERENCES fournisseur ([N° Siret]) )

Modification de table : syntaxe générale (simplifié) SQL (de ACCESS) permet de modifier le schéma d’une table par l’instruction ALTER TABLE, suivie de la spécification de l’opération à effectuer. ALTER TABLE table ADD COLUMN champ type[(taille)] [NOT NULL] | ALTER COLUMN champ type[(size)] | ADD CONSTRAINT … | DROP COLUMN champ | DROP CONSTRAINT nom

Modification de table : Premier exemple ALTER TABLE article ALTER COLUMN [prix article] CHAR(25)

syntaxe générale (simplifiée) Suppression de table : syntaxe générale (simplifiée) La suppression d’une table se fait par DROP TABLE : DROP TABLE table DROP TABLE article  Supprime la table article de notre base de données.

BD Articles-Fournisseurs Exercice : BD Articles-Fournisseurs Un vendeur veut gérer, de façon automatique, les articles qu’il vend. Sachant que : un fournisseur est décrit par : un numéro de Siret, une description, et une adresse, un article est décrit par : un code alphanumérique, une description, un prix d’achat et un prix de vente, un article à seul fournisseur et un fournisseur peut fournir plusieurs articles. Comment construire la base de données correspondante à son besoin ? Pour décrire les fournisseurs  Une table Fournisseurs. Pour décrire les articles  Une table Articles. Pour décrire le lien entre un article et un fournisseur  Clé primaire/clé externe

La table Fournisseurs Un fournisseur est décrit par : un numéro de Siret, une description, et une adresse. CREATE TABLE Fournisseurs ( [N° Siret] INT NOT NULL, [Description] Text(30), [Adresse] Text(50), CONSTRAINT F1 PRIMARY KEY ([N° Siret]) )

La table Articles Un article est décrit par : un code alphanumérique, une description, un prix d’achat et un prix de vente. CREATE TABLE Articles ( [Code Article] Text(40) NOT NULL, [Description] Text(30), [Prix achat] Real, [Prix vente] Real, CONSTRAINT A1 PRIMARY KEY ([Code Article]) )

Modification de la table Articles Insertion du lien : Modification de la table Articles Un article à un seul fournisseur et un fournisseur peut fournir plusieurs articles. ALTER TABLE Articles ADD COLUMN [Réf fournisseur] INT    ALTER TABLE Articles ADD CONSTRAINT A2 FOREIGN KEY ([Réf fournisseur]) REFERENCES Fournisseurs([N° Siret])

d’ intégrité référentielle Exemple de violation d’ intégrité référentielle

La table Articles complète, dés la création CREATE TABLE Articles ( [Code Article] Text(40) NOT NULL, [Description] Text(30), [Prix achat] Real, [Prix vente] Real, [Réf fournisseur] INT,    CONSTRAINT A1 PRIMARY KEY ([Code Article]), CONSTRAINT A2 FOREIGN KEY ([Réf fournisseur]) REFERENCES Fournisseurs([N° Siret]) )

Les associations (N-N) : problème Un article à un seul fournisseur et un fournisseur peut fournir plusieurs articles. Association (1-N) Articles Fournisseurs Code Article … 1 2 4 6 8 9 Rèf fournisseur 105230 105234 105237 N° Siret … 105230 105234 105237 Un article à plusieurs fournisseurs et un fournisseur fournit plusieurs articles. Association (N-N) !?

Les associations (N-N) : solution Association (N-N) Deux associations (1-N). Table(s) jonction(s). Articles ArticlesFournisseurs Fournisseurs Code Article … 1 2 4 6 8 9 Réf Article Réf fournisseur 1 105230 2 105234 4 6 105237 8 9 N° Siret … 105230 105234 105237 La clé primaire de la table ArticlesFournisseurs : (Réf Article, Réf fournisseur)

Création de la table Articles-Fournisseurs CREATE TABLE ArticlesFournisseurs ( [Réf Articles] Text(40), [Réf Fournisseurs] INT,    CONSTRAINT AF1 PRIMARY KEY ([Réf Articles], [Réf Fournisseurs]), CONSTRAINT AF2 FOREIGN KEY ([Réf Articles]) REFERENCES Articles([Code Article]), CONSTRAINT AF3 FOREIGN KEY ([Réf Fournisseurs]) REFERENCES Fournisseurs([N° Siret]) )