NANA EMMANUEL 1 COURS D’INFORMATIQUE TERMINALE C UA7 : Implémentation d’une bas

NANA EMMANUEL 1 COURS D’INFORMATIQUE TERMINALE C UA7 : Implémentation d’une base de données Leçon 20 &21 &22 : Généralités sur les bases de données et SGBD & Définition et manipulation des données en SQL Situation problème : Questions d’orientation/consignes Indicateurs de compétences : A la fin de cette leçon, l’élève doit être capable de :  Citer quelques exemples de SGBD  Lister les opérations de manipulation des données d’une base de données (insertion, modification, sélection, suppression) ;  Écrire les requêtes SQL de définition des données sur une seule table (CREATE, ALTER, DROP) Introduction Le SQL (Structured Query Language) en français (langage de requête structuré) est un langage Standard permettant à un client de communiquer des instructions à la base de données. Il se décline en 04 parties et comme tout langage possède une syntaxe bien précise avec des instructions permettant (types de données, contraintes d’intégrité) de décrire les données qui seront manipulées. Le SQL se décline en 4 parties qui sont :  LDD (Langage de définition des données) : cela veut dire qu’il permet de créer des bases de données ainsi que des tables dans une Base de données  LMD (Langage de Manipulation des données) : cela signifie qu’il permet de sélectionner, insérer, modifier, ou supprimer des données dans une base de données  LCD (Langage de contrôle de données) : qui permet d’autoriser des actions à certaines personnes, d’ajouter ou de supprimer des autorisations  LCT (Langage de contrôle de transaction) : permettant de confirmer ou annuler l’exécution d’une transaction Dans le cadre de ce cours nous nous limiterons aux LDD et LMD. I. QUELQUES EXEMPLES DE SGBD Un SGBD (Système de Gestion de Base de Données) est un logiciel servant à stocker, à manipuler ou gérer, et à partager des données dans une base de données, en garantissant la qualité, la pérennité et la confidentialité des informations, tout en cachant la complexité des opérations. Il existe plusieurs SGBD comme, Microsoft-Access, MySQL, Oracle, SQL Server, PostgreSQL, DBase , Apache Derby, Sybase, Informix etc. II. LES TYPES DE DONNEES UTILISEES EN SQL SQL propose les types de données suivants :  Numériques : INTEGER (Entier signé de 32 bits), SMALLINT (Entier signé de 16 bits), FLOAT (Nombre à virgule flottante), DECIMAL(n, m) : Nombre de n chiffres [optionnellement m après la virgule]  Chaines de caractères : CHAR(n) (Chaîne de caractères de longueur fixe), VARCHAR(n) (Chaîne de caractère de longueur variable, n caractères maximum), TEXT (n) (Permet de stocker du texte de longueur variable. Une variable de type TEXT peut avoir du texte sur plusieurs lignes)  Date : DATE (pour représenter une date sous le format ‘AAAA-MM-JJ’)  Heure : TIME (pour représenter l’heure) III. LES CONTRAINTES D’INTEGRITE EN SQL NANA EMMANUEL 2 COURS D’INFORMATIQUE TERMINALE C Ce sont des règles qui édictent les propriétés que doivent respecter les champs de la base de données afin de garantir leur cohérence, leur pertinence et leur validité. Ces contraintes doivent être exprimées dès la création de la table grâce aux mots clés suivants :  CONSTRAINT : permet de spécifier une clé primaire ou clé étrangère  DEFAULT : Permet de garantir qu’un champ ne sera pas vide  NOT NULL : permet de spécifier qu’un champ doit être saisi  UNIQUE : cette clause permet de vérifier que la valeur saisie pour un champ n’existe pas déjà.  CHECK () : permet de faire un test sur un champ comportant une condition logique portant sur une valeur entre les parenthèses. IV. LANGAGE DE DEFINITION DES DONNEES 1) Créer et supprimer une base de données a) Créer une base de données Syntaxe : CREATE DATABASE [IF NOT EXISTS] database_name; Exemple: CREATE DATABASE Lycée; b) Supprimer une base de données Syntaxe : DROP DATABASE database_name ; Exemple : DROP DATABASE Lycée ; 2) Créer une table La commande CREATE TABLE permet de créer une table en SQL. La création d’une table sert à définir les colonnes et le type de données qui seront contenues dans chacune des colonnes. Syntaxe : CREATE TABLE table_name ( column1 datatype, column2 datatype, column3 datatype, .... ); Exemple : CREATE TABLE Elève ( Matricule CHAR (5), Nom VARCHAR (50), Prénom VARCHAR (50), Sexe CHAR (1), Age INT (4), Niveau VARCHAR (20), Id_classe CHAR (10), PRIMARY KEY (Matricule) ); Exemple de création d’une table avec utilisation des contraintes : CREATE TABLE Elève ( Matricule CHAR (5), Nom VARCHAR (50), Prénom VARCHAR (50), Sexe CHAR (1) DEFAULT ‘M’, Age INT (4), CHECK (Age < 25), Niveau VARCHAR (20) NOT NULL, Id_Classe CHAR (10), NANA EMMANUEL 3 COURS D’INFORMATIQUE TERMINALE C UNIQUE (Nom, Prénom), PRIMARY KEY (Matricule), CONSTRAINT FK_ClasseEleve FOREIGN KEY (Id_classe) REFERENCES Classe(Id_Classe) ); 3) Supprimer une table Syntaxe : DROP TABLE table_name ; Exemple : DROP TABLE Elève ; 4) Modification du schéma d’une table La modification d’une table se fait à l’aide de la commande ALTER TABLE a) Ajouter une colonne à la table (ADD) Syntaxe : ALTER TABLE table_name ADD column_name datatype; Exemple : ALTER TABLE Elève ADD TEL_Parent INT(8) ; b) Supprimer une colonne (DROP/DROP CULUMN) Syntaxe : ALTER TABLE table_name DROP COLUMN column_name; Exemple : ALTER TABLE Elève DROP COLUMN TEL_parent ; c) Modifier une colonne (MODIFY/MODIFY COLUMN) : change le type de la colonne Syntaxe : ALTER TABLE table_name MODIFY column_name datatype; Exemple : ALTER TABLE Elève MODIFY Sexe VARCHAR (10) ; d) Renommer une colonne (RANAME/CHANGE) Syntaxe : ALTER TABLE table_name RENAME COLUMN Old_name TO New_name datatype; ALTER TABLE table_name CHANGE COLUMN Old_name TO New_name datatype; Exemple : ALTER TABLE Elève RENAME COLUMN Id_classe TO Classe VARCHAR (20) ; V. LANGAGE DE MANIPULATION DES DONNÉES Le langage SQL propose quatre types de requêtes pour manipuler les données. Il s’agit de :  La requête d’insertion ou d’ajout : permet de faire un enregistrement.  La requête de modification : permet de modifier les valeurs des enregistrements.  La requête de suppression : permet de supprimer des enregistrements.  La requête de sélection ou d’interrogation : permet d’afficher des enregistrements Soient les tables « Elève » et « Club » ci-dessous : 1) Requête d’insertion des données Pour insérer un élément dans une table d’une base de données, on utilise le mot-clé INSERT INTO et sa syntaxe est la suivante : INSERT INTO nom_table (champ1, champ2 …champN) VALUES ("val_champ1","val_champ2", … "val_champN") ; NANA EMMANUEL 4 COURS D’INFORMATIQUE TERMINALE C Exemple : Écrire la requête permettant d’ajouter dans la table « Élève », l’élève ayant les informations suivantes : TA04, Abba, 18, Masculin. INSERT INTO Élève (matricule, nom, sexe, âge) VALUES ("TA01", "Abba", 18,"Masculin") ; Nous pouvons aussi écrire simplement : INSERT INTO Élève VALUES ("TA01", "Abba", 18, "Masculin") ; 2) Requête de modification des données Pour modifier les données dans une table, on utilise le mot-clé UPDATE. Sa syntaxe est la suivante : UPDATE Nom_table SET champ1=valeur1, champ2=valeur2, …, champN=valeurN WHERE condition ; Exemple : Écrire la requête permettant de modifier l’âge de l’élève Abba qui a plutôt 20 ans UPDATE Élève SET âge=20 WHERE matricule="TA04" ; 3) Requête de suppression d’enregistrement Pour supprimer un enregistrement, on utilise le mot clé DELETE. Sa syntaxe est la suivante : DELETE FROM nom_table WHERE condition ; Exemple : Écrire la requête permettant de supprimer l’élève Abba de la base de données DELETE FROM Élève WHERE matricule="TA04" ; 4) Requête de sélection ou d’interrogation Syntaxe : SELECT [DISTINCT] column_name1, column_name2, …, column_nameN FROM table_name [ WHERE condition] [GROUP BY column_name (s)] [ORDER BY column_name (s)] ;  La clause SELECT permet de spécifier les attributs que l’on désire voir apparaître dans le résultat de la requête. Le caractère étoile (*) permet de récupérer tous les attributs de la table générée par la clause FROM.  La clause FROM spécifie les tables sur lesquelles porte la requête  La clause WHERE qui est facultative, indique une condition que doivent respecter les n-uplets sélectionnés. Nous pouvons utiliser les opérateurs tels que : =, <, >, AND, OR, LIKE, BETWEEN <=, >=, etc.  La clause GROUP BY permet de définir des groupes  La clause ORDER BY permet de trier les n-uplets du résultat par ordre croissant ou décroissant. Pour cela, on utilise les mots-clés ASC (pour trier par ordre croissant) et DESC (pour trier par ordre décroissant). Par défaut, les résultats sont classés par ordre ascendant ou croissant.  Le mot clé DISTINCT permet d’éviter les redondances dans les résultats. a) Sélection des données sans condition (ou projection) La sélection des données sans condition est encore appelée projection. EXEMPLE :  SELECT Nom, Age FROM Élève ; permet d’afficher uniquement les noms et les âges des élèves.  SELECT * FROM Élève ; permet d’afficher toute la table élève.  SELECT nomClub FROM Club ; permet d’afficher les noms des clubs de la table Club. On constate qu’il existe des doublons dans le résultat de la dernière requête.  SELECT DISTINCT nomClub FROM Club ; permet d’afficher le résultat sans doublon b) Sélection des données selon une condition (ou restriction) NANA EMMANUEL uploads/Geographie/ tle-c-lecon20-amp-21-amp-22.pdf

  • 18
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager