Initiation aux bases de données et à la programmation événementielle Cours N°4 : langage de définition de données. Support de cours de Souheib BAARIR. Page web : pagesperso-systeme.lip6.fr/Souheib.Baarir/bdvba/support.htm E-mail : [email protected]Université Paris Ouest Nanterre la Défense. 2009-2010. 1
19
Embed
Initiation aux bases de données et à la programmation événementielle Cours N°4 : langage de définition de données. Support de cours de Souheib BAARIR.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Initiation aux bases de données et à la programmation événementielle
Cours N°4 :
langage de définition de données.
Support de cours de Souheib BAARIR.
Page web : pagesperso-systeme.lip6.fr/Souheib.Baarir/bdvba/support.htmE-mail : [email protected]
Université Paris Ouest Nanterre la Défense.2009-2010. 1
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])
8
Modification de table : syntaxe générale (simplifié)
ALTER TABLE table
ADD COLUMN champ type[(taille)] [NOT NULL] |
ALTER COLUMN champ type[(size)] |
ADD CONSTRAINT … |
DROP COLUMN champ |
DROP CONSTRAINT nom
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.
9
Modification de table : Premier exemple
ALTER TABLE article ALTER COLUMN [prix article] CHAR(25)
10
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.
11
Exercice : BD Articles-Fournisseurs
Un vendeur veut gérer, de façon automatique, les articles qu’il vend. Sachant • qu’un fournisseur est décrit par : un numéro de Siret, une description, et une adresse,•qu’un article est décrit par : un code alphanumérique, une description, un prix d’achat et un prix de vente,•qu’un article à un seul fournisseur et qu’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
12
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 C PRIMARY KEY ([N° Siret]))
13
La table Articles Un article est décrit par : un code alphanumérique, une description,
Un article à plusieurs fournisseurs et un fournisseur fournit plusieurs articles.
Un article à un seul fournisseur et un fournisseur peut fournir plusieurs articles.
Code Article …
1
…
2
4
6
8
9
N° Siret …
105230
…
105234
105237
ArticlesFournisseursRèf
fournisseur
105230
105234
105230
105234
105230
105237
Association (1-N)Association (1-N)
Association (N-N) !?Association (N-N) !?
18
Les associations (n-n) : solution
Code Article …
1
…
2
4
6
8
9
N° Siret …
105230
…
105234
105237
ArticlesFournisseurs
Association (N-N) Association (N-N) Deux associations (1-N).Deux associations (1-N).Table(s) intermédiaires. Table(s) intermédiaires.
Réf Article Réf fournisseur
1 105230
2 105234
1 105234
4 105230
6 105237
8 105230
8 105234
9 105234
ArticlesFournisseurs
La clé primaire de la table ArticlesFournisseurs : (Réf Article, Réf fournisseur)La clé primaire de la table ArticlesFournisseurs : (Réf Article, Réf fournisseur)