École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données Programme de 4 ème SI Matière : Base de Données Programme de 4 ème SI Matière : Base de Données
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données Une base de données est un ensemble structuré de données relatives à un ou plusieurs domaines. Elle est exhaustive, non redondante, structurée et persistante. Lutilisation des bases de données permet de centraliser linformation, dassurer l'indépendance entre les données et les programmes, détablir des liaisons entre les entités et de partager les données. Il existe quatre modèles de base de données : modèle hiérarchique, modèle réseau, modèle orienté objet et modèle relationnel. Le modèle relationnel est, aujourdhui, le plus utilisé. Une base de données est un ensemble structuré de données relatives à un ou plusieurs domaines. Elle est exhaustive, non redondante, structurée et persistante. Lutilisation des bases de données permet de centraliser linformation, dassurer l'indépendance entre les données et les programmes, détablir des liaisons entre les entités et de partager les données. Il existe quatre modèles de base de données : modèle hiérarchique, modèle réseau, modèle orienté objet et modèle relationnel. Le modèle relationnel est, aujourdhui, le plus utilisé. Notion de Base de Données Chap I : Notion de Base de Données
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données Notion de Systèmes de Gestion Base de Données Notion de Systèmes de Gestion Base de Données Un système de gestion de base de données (SGBD) est un logiciel qui permet de : décrire, modifier, interroger et administrer les données dune base de données. Un SGBD permet la définition, la manipulation, lintégrité, la confidentialité et la sécurité Chap II : Notion de Systèmes de Gestion de Bases de Données
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données Chap III : Structure dune Base de Données Structure dune Base de Données Selon le modèle relationnel, une base de données est composé essentiellement de : Tables Colonnes Lignes Clés primaires Clés étrangères Contraintes dintégrité La structure d une base de donn é es peut être repr é sent é e selon deux formalismes : La structure d une base de donn é es peut être repr é sent é e selon deux formalismes : Repr é sentation textuelle Représentation graphique TablesColonnes LignesClés PrimClés Etran Con. Dintég.
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données Chap III : Structure dune Base de Données Définition : Une table est un ensemble de données relatives à un même sujet (ou entité) et structurées sous forme de tableau. Notion de table TablesColonnes LignesClés PrimClés Etran Con. Dintég.
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données Définition : Dans une table, une colonne correspond à une propriété élémentaire de lobjet décrit par cette table. Une colonne est décrite par : Un nom, Un type de donn é es, Une taille, Un indicateur de pr é sence obligatoire, Une valeur par d é faut, Une r è gle é ventuelle indiquant les valeurs autoris é es. Notion de Colonne Chap III : Structure dune Base de Données TablesColonnes LignesClés PrimClés Etran Con. Dintég.
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données Notion de Ligne Définition : Une ligne correspond à une occurrence du sujet représenté par la table. On dit aussi quelle correspond à un objet du monde réel. Chap III : Structure dune Base de Données TablesColonnes LignesClés PrimClés Etran Con. Dintég.
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données Notion de Clés Primaires Définition : La clé primaire dune table est une colonne ou un groupe de colonnes permettant didentifier de façon unique chaque ligne de la table. Autrement dit, la connaissance de la valeur de la clé primaire, permet de connaître sans aucune ambiguïté les valeurs des autres colonnes de la table. Chap III : Structure dune Base de Données Remarques : Chaque table doit comporter une et une seule clé primaire. Dans certains cas, dans une même table on peut avoir deux ou plusieurs colonnes qui peuvent jouer le rôle de clé primaires. Dans ce cas on doit choisir une parmi toutes ces colonnes. Les colonnes qui constituent la clé primaire sont obligatoires. Pour distinguer une colonne qui fait partie de la clé primaire des autres colonnes, on la souligne, ou on la met en gras. TablesColonnes LignesClés PrimClés Etran Con. Dintég.
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données Liens entre tables Définition : Un lien entre deux table A et B est représenté par lajout dans la table B dune nouvelle colonne correspondant à la clé primaire de la table A. Cette nouvelle colonne est appelée clé étrangère. Chap III : Structure dune Base de Données TablesColonnes LignesClés PrimClés Etran Con. Dintég.
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données Notion de contrainte dintégrité Définition : Une contrainte dintégrité est une règle appliquée à une colonne ou à une table et qui doit être toujours vérifiée. Les principaux types de contraintes dintégrité sont : Les contraintes de domaines : Exemples : La note obtenue dans une matière doit être comprise entre zéro et vingt. Les contraintes dintégrité de tables : Exemple : La table Élève doit avoir une clé primaire, le numéro de carte didentité par exemple. Les contraintes dintégrité référentielles : Exemple : On naccepte pas que le Code article saisi dans une Commande nexiste pas dans la colonne Code article de la table Article. Chap III : Structure dune Base de Données TablesColonnes LignesClés PrimClés Etran Con. Dintég.
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données Représentation de la structure dune base de données Repr é sentation textuelle Exemple : Etablissement (CodeEtab, NomEtab, AdresseEtab, TelEtab) Eleve(NumElev, NomElev, PrenomElev, DnaissElev, CodeEtab#) Représentation graphique Chap III : Structure dune Base de Données
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données Démarche De détermination de la Structure dune BD Chap IV : Démarche De détermination de la structure dune BD La démarche pour déterminer la structure dune base de données est composée des étapes suivantes : 1) Délimiter le(s) domaine(s) concernés 2) Déterminer les colonnes 3) Déterminer les tables 4) Affecter les colonnes aux tables 5) Déterminer les clés primaires 6) Déterminer les liens entre tables 7) Analyser et affiner la structure de la base de données La démarche pour déterminer la structure dune base de données est composée des étapes suivantes : 1) Délimiter le(s) domaine(s) concernés 2) Déterminer les colonnes 3) Déterminer les tables 4) Affecter les colonnes aux tables 5) Déterminer les clés primaires 6) Déterminer les liens entre tables 7) Analyser et affiner la structure de la base de données Étape 1Étape 2 Étape 7Étape 6 Étape 4Étape 5Étape 3
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données 1) Délimiter le(s) domaine(s) concernés C ette première étape consiste à identifier le ou les domaines qui constituent lobjet de la base de données. Est-ce quil sagit par exemple de gérer les données dune bibliothèque publique, dune compagnie aérienne, dun lycée, dun tournoi sportif, etc. ? Chap IV : Démarche De détermination de la structure dune BD Étape 1Étape 2 Étape 7Étape 6 Étape 4Étape 5Étape 3
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données 2)Déterminer les colonnes Lors de la détermination de la liste des colonnes à partir des faits, les règles suivantes doivent être respectées : Une colonne doit représenter une information sous sa forme élémentaire, c'est-à-dire que pour la manipuler, on ne doit pas être obligé de la décomposer. Exemple : Le nom dun élève doit être représenté par deux colonnes (nom et prénom). Une colonne ne doit pas correspondre à une information calculée ou dérivée à partir dautres colonnes. Pour élaborer la liste de colonnes, on peut utiliser le tableau suivant: Lors de la détermination de la liste des colonnes à partir des faits, les règles suivantes doivent être respectées : Une colonne doit représenter une information sous sa forme élémentaire, c'est-à-dire que pour la manipuler, on ne doit pas être obligé de la décomposer. Exemple : Le nom dun élève doit être représenté par deux colonnes (nom et prénom). Une colonne ne doit pas correspondre à une information calculée ou dérivée à partir dautres colonnes. Pour élaborer la liste de colonnes, on peut utiliser le tableau suivant: Chap IV : Démarche De détermination de la structure dune BD Étape 1Étape 2 Étape 7Étape 6 Étape 4Étape 5Étape 3
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données 3) Déterminer les tables Il sagit de déterminer la liste des tables qui vont constituer la base de données. Chaque table correspond à un sujet de domaine étudié. Cette liste peut être représentée aussi sous forme du tableau suivant : Chap IV : Démarche De détermination de la structure dune BD Étape 1Étape 2 Étape 7Étape 6 Étape 4Étape 5Étape 3
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données 4) Affecter les colonnes aux tables Chap IV : Démarche De détermination de la structure dune BD Cest létape la plus importante dans le processus de détermination de la structure dune base de données. Il sagit donc de reprendre la liste des colonnes et de décider pour chaque colonne à quelle table on doit laffecter. Ce tableau contient déjà une colonne « sujet » qui correspond aux tables auxquelles les colonnes doivent être affectées. Pour sassurer quune colonne est affectée à la bonne table, on doit tenir compte des règles suivantes : Une colonne doit être affectée à une et une seule table. Une seule exception échappe à cette règle, cest celle relative aux clés étrangères. Si la présence dune colonne, qui nest pas clé étrangère, dans une table entraîne que plusieurs lignes de cette dernière vont contenir la même valeur pour cette colonne, cest que cette colonne se trouve dans la mauvaise table. Il convient donc de laffecter à une autre table dans laquelle cette anomalie ne se reproduira pas. Cest létape la plus importante dans le processus de détermination de la structure dune base de données. Il sagit donc de reprendre la liste des colonnes et de décider pour chaque colonne à quelle table on doit laffecter. Ce tableau contient déjà une colonne « sujet » qui correspond aux tables auxquelles les colonnes doivent être affectées. Pour sassurer quune colonne est affectée à la bonne table, on doit tenir compte des règles suivantes : Une colonne doit être affectée à une et une seule table. Une seule exception échappe à cette règle, cest celle relative aux clés étrangères. Si la présence dune colonne, qui nest pas clé étrangère, dans une table entraîne que plusieurs lignes de cette dernière vont contenir la même valeur pour cette colonne, cest que cette colonne se trouve dans la mauvaise table. Il convient donc de laffecter à une autre table dans laquelle cette anomalie ne se reproduira pas. Étape 1Étape 2 Étape 7Étape 6 Étape 4Étape 5Étape 3
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données 5) Déterminer les clés primaires Chaque table est maintenant décrite par un ensemble de colonnes. On doit alors déterminer parmi ces colonnes celle(s) qui permettent didentifier les autres colonnes de façon unique, c'est-à-dire les colonnes dont la valeur est unique dans chaque ligne. Ces colonnes constitueront alors la clé primaire de la table. Dans la plupart des cas, une clé primaire est composée dune seule colonne, mais dans certains cas, elle peut être composée de deux ou plusieurs colonnes. On parle alors de clé composée. Chaque table est maintenant décrite par un ensemble de colonnes. On doit alors déterminer parmi ces colonnes celle(s) qui permettent didentifier les autres colonnes de façon unique, c'est-à-dire les colonnes dont la valeur est unique dans chaque ligne. Ces colonnes constitueront alors la clé primaire de la table. Dans la plupart des cas, une clé primaire est composée dune seule colonne, mais dans certains cas, elle peut être composée de deux ou plusieurs colonnes. On parle alors de clé composée. Chap IV : Démarche De détermination de la structure dune BD Étape 1Étape 2 Étape 7Étape 6 Étape 4Étape 5Étape 3
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données Chap IV : Démarche De détermination de la structure dune BD 6) Déterminer les liens entre tables Maintenant que les tables sont complètement décrites avec leurs colonnes et leurs clés primaires, il reste à établir les liens éventuels entre ces tables. La détermination des liens entre les tables peut être effectuée de deux façons : Il existe dans une table B une colonne b qui correspond à une colonne a dans une autre table A et qui est une clé primaire dans cette table. Ceci veut dire que la colonne b est une clé étrangère dans la table B. Un lien doit être donc établi entre les tables A e t B pour relier les colonnes a et b. Daprès la description dont nous disposons sur les sujets représentés par deux tables, nous avons pu déduire quil existe un lien entre les deux sujets. Pour établir ce lien entre les deux tables, nous devons dabord identifier la table « mère » et la table « fille ». Ensuite, on doit rajouter à la table « fille » une colonne qui correspond à la clé primaire de la table « mère ». Cette colonne rajoutée sera une clé étrangère. Maintenant que les tables sont complètement décrites avec leurs colonnes et leurs clés primaires, il reste à établir les liens éventuels entre ces tables. La détermination des liens entre les tables peut être effectuée de deux façons : Il existe dans une table B une colonne b qui correspond à une colonne a dans une autre table A et qui est une clé primaire dans cette table. Ceci veut dire que la colonne b est une clé étrangère dans la table B. Un lien doit être donc établi entre les tables A e t B pour relier les colonnes a et b. Daprès la description dont nous disposons sur les sujets représentés par deux tables, nous avons pu déduire quil existe un lien entre les deux sujets. Pour établir ce lien entre les deux tables, nous devons dabord identifier la table « mère » et la table « fille ». Ensuite, on doit rajouter à la table « fille » une colonne qui correspond à la clé primaire de la table « mère ». Cette colonne rajoutée sera une clé étrangère. Étape 1Étape 2 Étape 7Étape 6 Étape 4Étape 5Étape 3
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données 7) Analyser et affiner la structure de la base de données Chap IV : Démarche De détermination de la structure dune BD L orsquon a identifié la structure de toutes les tables et établi les liens entre ces tables, il convient de faire une représentation graphique de la base de données afin de lanalyser et de détecter les anomalies éventuelles. Il pourrait sagir dun oubli de colonnes ou de liens entre tables. L orsque les corrections éventuelles auront été apportées à la structure de la base, nous devons utiliser le SGBD pour créer les différentes tables. Ensuite, on doit insérer suffisamment de lignes dans chaque table pour tester la validité de sa structure. Chaque anomalie constatée, sera corrigée en modifiant la structure (déplacer une colonne dune table à une autre, créer une nouvelle table, éclater une colonne en plusieurs colonnes, etc.). Il sagit en fait de sassurer que toutes les règles vues dans les sections précédentes sont vérifiées. L orsquon a identifié la structure de toutes les tables et établi les liens entre ces tables, il convient de faire une représentation graphique de la base de données afin de lanalyser et de détecter les anomalies éventuelles. Il pourrait sagir dun oubli de colonnes ou de liens entre tables. L orsque les corrections éventuelles auront été apportées à la structure de la base, nous devons utiliser le SGBD pour créer les différentes tables. Ensuite, on doit insérer suffisamment de lignes dans chaque table pour tester la validité de sa structure. Chaque anomalie constatée, sera corrigée en modifiant la structure (déplacer une colonne dune table à une autre, créer une nouvelle table, éclater une colonne en plusieurs colonnes, etc.). Il sagit en fait de sassurer que toutes les règles vues dans les sections précédentes sont vérifiées. Étape 1Étape 2 Étape 7Étape 6 Étape 4Étape 5Étape 3
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données Chap V : Création et modification de la structure dune BD Création et modification de la Structure dune BD Il existe deux modes pour créer et modifier les éléments dune base de données : Mode assisté et Mode commande. Le mode assisté permet de créer les éléments de la base de données à travers des assistants graphiques. Le mode commande consiste à créer les différentes structures de la base de données à laide de commandes du langage SQL. Ce langage est composé de trois familles de commandes : Commandes de définition de données : ce sont des commandes qui permettent de créer, modifier et supprimer les différentes structures de la base de données. Chapitre V Commandes de manipulation de données : ce commandes permettent de dinsérer, de modifier, de consulter ou de supprimer des lignes dans les tables de la base de données. Chapitre VI Commandes de contrôle de données : ce commandes permettent de contrôler lutilisation de la base de données. Chapitre VII. Il existe deux modes pour créer et modifier les éléments dune base de données : Mode assisté et Mode commande. Le mode assisté permet de créer les éléments de la base de données à travers des assistants graphiques. Le mode commande consiste à créer les différentes structures de la base de données à laide de commandes du langage SQL. Ce langage est composé de trois familles de commandes : Commandes de définition de données : ce sont des commandes qui permettent de créer, modifier et supprimer les différentes structures de la base de données. Chapitre V Commandes de manipulation de données : ce commandes permettent de dinsérer, de modifier, de consulter ou de supprimer des lignes dans les tables de la base de données. Chapitre VI Commandes de contrôle de données : ce commandes permettent de contrôler lutilisation de la base de données. Chapitre VII. CréationModification
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données Création dune Base de Données mode assisté: (Présentation) Création dune BD Création dune table Indiquer la clé primaire dune table Établir un lien entre deux tables mode commande: Créer une table en mode commande: La commande du langage SQL permettant de créer une table est la commande CREATE TABLE. La forme générale de cette commande est la suivante : CREATE TABLE nom_table (définition_ colonne | définition_ contrainte,... ) La clause « définition_colonne » permet de préciser les caractéristiques dune colonne. Elle a la syntaxe suivante : Nom_colonne TYPE [[NOT] NULL] [DEFAULT valeur] [contrainte_colonne] Les Principaux types sont : INT (n) Num é rique à n chiffres DECIMAL (n, m) Num é rique à n chiffres dont m d é cimales VARCHAR(n) Cha î ne de caract è res de longueur variable dont la taille maximale est n DATE Date et/ou heure mode assisté: (Présentation) Création dune BD Création dune table Indiquer la clé primaire dune table Établir un lien entre deux tables mode commande: Créer une table en mode commande: La commande du langage SQL permettant de créer une table est la commande CREATE TABLE. La forme générale de cette commande est la suivante : CREATE TABLE nom_table (définition_ colonne | définition_ contrainte,... ) La clause « définition_colonne » permet de préciser les caractéristiques dune colonne. Elle a la syntaxe suivante : Nom_colonne TYPE [[NOT] NULL] [DEFAULT valeur] [contrainte_colonne] Les Principaux types sont : INT (n) Num é rique à n chiffres DECIMAL (n, m) Num é rique à n chiffres dont m d é cimales VARCHAR(n) Cha î ne de caract è res de longueur variable dont la taille maximale est n DATE Date et/ou heure ModificationSuivantExemple Chap V : Création et modification de la structure dune BD
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données Loption « contrainte_colonne » permet de préciser une contrainte dintégrité relative à la colonne. Cette contrainte peut être une contrainte de clé primaire, de clé étrangère ou de valeurs. La syntaxe correspondante est la suivante : [CONSTRAINT contrainte] {PRIMARY KEY | REFERENCES nom_table [(nom_colonne)] [ON DELETE CASCADE] | CHECK (condition)} La clause « définition_contrainte » de la commande CREATE TABLE permet de définir une contrainte dintégrité au niveau de la table. Elle doit être utilisée lorsque la contrainte ne sapplique pas à une seule colonne. Elle a la syntaxe suivante : [CONSTRAINT contrainte] { PRIMARY KEY} (colonne1, colonne2,...) | FOREIGN KEY (colonne1, colonne2,...) REFERENCES nom_table [(colonne1, colonne2,... )] [ON DELETE CASCADE] | CHECK (condition)} Loption « contrainte_colonne » permet de préciser une contrainte dintégrité relative à la colonne. Cette contrainte peut être une contrainte de clé primaire, de clé étrangère ou de valeurs. La syntaxe correspondante est la suivante : [CONSTRAINT contrainte] {PRIMARY KEY | REFERENCES nom_table [(nom_colonne)] [ON DELETE CASCADE] | CHECK (condition)} La clause « définition_contrainte » de la commande CREATE TABLE permet de définir une contrainte dintégrité au niveau de la table. Elle doit être utilisée lorsque la contrainte ne sapplique pas à une seule colonne. Elle a la syntaxe suivante : [CONSTRAINT contrainte] { PRIMARY KEY} (colonne1, colonne2,...) | FOREIGN KEY (colonne1, colonne2,...) REFERENCES nom_table [(colonne1, colonne2,... )] [ON DELETE CASCADE] | CHECK (condition)} ModificationExemple Chap V : Création et modification de la structure dune BD Création
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données Exemple CréationModification Chap V : Création et modification de la structure dune BD Représentation textuelle : Article (Code_art, des_art, PU, qte_stock) Client (Code_cli, nom_cli, adr_cli, tel_cli) Commande (Num_comm, date_comm, code_cli#) Detail_commande (Num_ligne, num_comm#, code_art#, qte_comm) La commande suivante permet de créer la table Article. CREATE TABLE article (Code_artVARCHAR(20) PRIMARY KEY, des_artVARCHAR (50) NOT NULL, PUDECIMAL(8, 3) CHECK (PU > 0), Qte_stockINT(5) DEFAULT 0 CHECK (qte_stock >= 0) ); La commande suivante permet de créer la table Client. CREATE TABLE client (Code_cli INT(5) PRIMARY KEY, nom_cli VARCHAR(25) NOT NULL, adr_cli VARCHAR(50), tel_cli VARCHAR(10) ); La commande suivante permet de créer la table Commande. CREATE TABLE commande (num_comm VARCHAR(20) CONSTRAINT pk_cli PRIMARY KEY, date_commDATE NOT NULL, code_clientVARCHAR(20) REFERENCES client(code_cli) ); La commande suivante permet de créer la table Détail commande. CREATE TABLE detail_commande (Num_ligneINT(4), num_commVARCHAR(20) REFERENCES commande, Code_art VARCHAR(20) REFERENCES article, Qte_commINT(5) CHECK (qte_comm > 0), PRIMARY KEY (num_comm, num_ligne) );
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données Modification de la structure dune Base de Données CréationExemple Chap V : Création et modification de la structure dune BD mode assisté: (Présentation) Ajout de colonnes à une table Suppression de colonnes d une table Modification de caract é ristiques d une colonne Modification de la cl é primaire d une table Suppression d une table Suppression d une base de donn é es mode commande: Modifier la structure dune table en mode commande La commande du langage SQL permettant de modifier la structure dune table est la commande ALTER TABLE. La forme générale de cette commande est la suivante : ALTER TABLE nom_table [ADD COLUMN définition_colonne] [ADD CONSTRAINT définition_contrainte] [MODIFY { définition_colonne] [DROP COLUMN nom_colonne ] [DROP CONSTRAINT nom_contrainte] [ENABLE | DISABLE nom_contrainte] Supprimer une table en mode commande La syntaxe de cette commande est la suivante : DROP TABLE nom_table exemple : DROP TABLE Client;
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données Exemples ALTER TABLE client ADD COLUMN ( VARCHAR(80) ); ALTER TABLE article ADD CONSTRAINT PRIMARY KEY (code_article); ALTER TABLE client MODIFY ( VARCHAR(100)); ALTER TABLE client DROP COLUMN ; ALTER TABLE article DROP CONSTRAINT PRIMARY KEY ; ALTER TABLE article DISABLE CONSTRAINT PRIMARY KEY ; ALTER TABLE article ENABLE CONSTRAINT PRIMARY KEY ; ALTER TABLE client ADD COLUMN ( VARCHAR(80) ); ALTER TABLE article ADD CONSTRAINT PRIMARY KEY (code_article); ALTER TABLE client MODIFY ( VARCHAR(100)); ALTER TABLE client DROP COLUMN ; ALTER TABLE article DROP CONSTRAINT PRIMARY KEY ; ALTER TABLE article DISABLE CONSTRAINT PRIMARY KEY ; ALTER TABLE article ENABLE CONSTRAINT PRIMARY KEY ; CréationModification ALTER TABLE nom_table [ADD COLUMN définition_colonne] [ADD CONSTRAINT définition_contrainte] [MODIFY { définition_colonne] [DROP COLUMN nom_colonne ] [DROP CONSTRAINT nom_contrainte] [ENABLE | DISABLE nom_contrainte] ALTER TABLE nom_table [ADD COLUMN définition_colonne] [ADD CONSTRAINT définition_contrainte] [MODIFY { définition_colonne] [DROP COLUMN nom_colonne ] [DROP CONSTRAINT nom_contrainte] [ENABLE | DISABLE nom_contrainte] Chap V : Création et modification de la structure dune BD
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données Chap VI : Manipulation dune Base de Données Manipulation dune Base de Données Manipulation dune Base de Données Manipulation de donn é es en mode assist é Mise à jour de donn é es ( Insertion et modification d une ligne) Recherche de donn é es : requêtes D é marche de cr é ation d une requête Choix de colonnes à afficher dans une requête Visualisation du r é sultat d une requête Enregistrement d une requête La d é finition des cl é s de tri Les crit è res de filtres Recherche v é rifiant un filtre relatif à une colonne de type texte Recherche v é rifiant un filtre relatif à une colonne de type num é rique Recherche v é rifiant un filtre relatif à une colonne de type date La combinaison de crit è res La d é finition d une requête param é tr é e Les formules Exemple : concat é nation Les champs calcul é s Les propri é t é s d une colonne ou d une requête Requête « s é lection » bas é e sur des calculs Les requêtes multi-tables La cr é ation d une jointure La propri é t é de la jointure É change de donn é es avec un tableur Importation de donn é es à partir d un tableur Exportation des donn é es vers un tableur Manipulation de donn é es en mode assist é Mise à jour de donn é es ( Insertion et modification d une ligne) Recherche de donn é es : requêtes D é marche de cr é ation d une requête Choix de colonnes à afficher dans une requête Visualisation du r é sultat d une requête Enregistrement d une requête La d é finition des cl é s de tri Les crit è res de filtres Recherche v é rifiant un filtre relatif à une colonne de type texte Recherche v é rifiant un filtre relatif à une colonne de type num é rique Recherche v é rifiant un filtre relatif à une colonne de type date La combinaison de crit è res La d é finition d une requête param é tr é e Les formules Exemple : concat é nation Les champs calcul é s Les propri é t é s d une colonne ou d une requête Requête « s é lection » bas é e sur des calculs Les requêtes multi-tables La cr é ation d une jointure La propri é t é de la jointure É change de donn é es avec un tableur Importation de donn é es à partir d un tableur Exportation des donn é es vers un tableur Mode Assisté Mode Commande
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données Manipulation de données en mode commande Chap VI : Manipulation dune Base de Données Insertion de lignes La forme générale de cette commande est la suivante : INSERT INTO nom_table [ liste_Nom_colonne] VALUES (liste_valeur) Exemple : INSERT INTO Client (code_client, Nom_client, Prénom_client, Adr_client, Tel_client, _client, Chiffre_Affaires_Année_encours, Cumul_Chiffre_Affaires) VALUES (1000,'TOUNSI', Fares,25 Rue des roses 2036 Ariana,"(216) ", 0, 0); Suppression de lignes La forme générale de cette commande est la suivante : DELETE FROM nom_table [WHERE condition] Exemple : DELETE FROM Commande WHERE num_comm = 50010; Modification de lignes : La forme générale de cette commande est la suivante : UPDATE nom_table SET Nom_colonne 1 = Expression 1 [, Nom_colonne 2 = Expression 2 …] [WHERE condition] Exemple : UPDATE Article SET Qte_stock = Qte_stock - 10 WHERE code_art = 7050; Insertion de lignes La forme générale de cette commande est la suivante : INSERT INTO nom_table [ liste_Nom_colonne] VALUES (liste_valeur) Exemple : INSERT INTO Client (code_client, Nom_client, Prénom_client, Adr_client, Tel_client, _client, Chiffre_Affaires_Année_encours, Cumul_Chiffre_Affaires) VALUES (1000,'TOUNSI', Fares,25 Rue des roses 2036 Ariana,"(216) ", 0, 0); Suppression de lignes La forme générale de cette commande est la suivante : DELETE FROM nom_table [WHERE condition] Exemple : DELETE FROM Commande WHERE num_comm = 50010; Modification de lignes : La forme générale de cette commande est la suivante : UPDATE nom_table SET Nom_colonne 1 = Expression 1 [, Nom_colonne 2 = Expression 2 …] [WHERE condition] Exemple : UPDATE Article SET Qte_stock = Qte_stock - 10 WHERE code_art = 7050; Mode Assisté Suivant
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données Chap VI : Manipulation dune Base de Données Recherche de donn é es : requêtes Une recherche peut consister à effectuer : Une projection sur certaines colonnes d une table Une s é lection sur certaines lignes d une table Une jointure sur deux tables La forme générale de cette commande est la suivante : SELECT [DISTINCT] * / liste_Nom_colonne FROM nom_table 1 [alias 1 ] [, nom_table 2 [alias 2 ] … ] [WHERE condition] ORDER BY Nom_colonne 1 [ASC / DESC] [, Nom_colonne 2 [ASC / DESC] … ] Exemples : SELECT des_art D é signation Produit, PU Prix Unitaire, Qte_stock Quantit é Stock, PU*Qte_stock Valeur Stock FROM Article; SELECT * FROM Client WHERE Cumul_Chiffre_Affaires BETWEEN AND AND code_client IN (1000, 1010, 1050, 1090) AND (Adr_client IS NULL OR Adr_client LIKE T% OR Adr_client LIKE _O% ); SELECT Nom_client, Pr é nom_client, date_comm FROM Client X, Commande Y WHERE X.code_client = Y.code_client; SELECT Nom_client, Pr é nom_client, date_comm FROM Client X, Commande Y WHERE X.code_client = Y.code_client ORDER BY Nom_client, date_comm DESC; Recherche de donn é es : requêtes Une recherche peut consister à effectuer : Une projection sur certaines colonnes d une table Une s é lection sur certaines lignes d une table Une jointure sur deux tables La forme générale de cette commande est la suivante : SELECT [DISTINCT] * / liste_Nom_colonne FROM nom_table 1 [alias 1 ] [, nom_table 2 [alias 2 ] … ] [WHERE condition] ORDER BY Nom_colonne 1 [ASC / DESC] [, Nom_colonne 2 [ASC / DESC] … ] Exemples : SELECT des_art D é signation Produit, PU Prix Unitaire, Qte_stock Quantit é Stock, PU*Qte_stock Valeur Stock FROM Article; SELECT * FROM Client WHERE Cumul_Chiffre_Affaires BETWEEN AND AND code_client IN (1000, 1010, 1050, 1090) AND (Adr_client IS NULL OR Adr_client LIKE T% OR Adr_client LIKE _O% ); SELECT Nom_client, Pr é nom_client, date_comm FROM Client X, Commande Y WHERE X.code_client = Y.code_client; SELECT Nom_client, Pr é nom_client, date_comm FROM Client X, Commande Y WHERE X.code_client = Y.code_client ORDER BY Nom_client, date_comm DESC; Mode Assisté SuivantMode Commande
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données Mode Assisté Mode Commande Utilisation des fonctions de calculs dans les op é rations de recherche (fonctions Agr é gat) Les fonctions de calcul offertes par SQL sont les suivantes : La fonction COUNT, La fonction SUM, La fonction MIN, La fonction MAX, La fonction AVG Exemples : SELECT COUNT(*) FROM Client ; SELECT COUNT(DISTINCT (code_client)) FROM Commande; SELECT COUNT(*) FROM Client WHERE Cumul_Chiffre_Affaires > ; SELECT SUM(Chiffre_Affaires_Ann é e_encours) Somme CA, MIN(Chiffre_Affaires_Ann é e_encours) CA Min, MAX(Chiffre_Affaires_Ann é e_encours) CA Max, AVG(Chiffre_Affaires _Ann é e_encours) CA Moyen FROM Client WHERE Cumul_Chiffre_Affaires > ; Chap VI : Manipulation dune Base de Données
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données Développement dapplications autour dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Ces applications sont composées de deux types de modules (ou programmes) : Des formulaires permettant de saisir, consulter, modifier ou supprimer des données Des états permettant déditer à lécran ou sur papier des données provenant de la base de données. Formulaires États
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Les formulaires Création dun formulaire Il existe trois façons pour créer un formulaire : Création de formulaire instantané : cest la forme la plus rapide pour créer un formulaire Utilisation dun assistant : Cest une forme combinant la rapidité et la diversité lors de la création dun formulaire Création libre : Cest la forme la plus complète (offre le plus de possibilités) mais aussi la plus lente en temps de création États
École dété Régionale 2007 Module : Base de Données Chap I : Notion de Base de Données Chap II : Notion de Systèmes de Gestion de Bases de Données Chap III : Structure dune Base de Données Chap IV : Démarche De détermination de la structure dune BD Chap V : Création et modification de la structure dune BD Chap VI : Manipulation dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Chap VIII: Sécurisation Dune Base de Données Chap VII: Développement dapplications autour dune Base de Données Les États Formulaires Création dun état Comme pour les formulaires, il existe trois façons pour créer un état : Création dun état instantané Utilisation dun assistant Création libre