Systèmes de gestion de bases de données CM4 : 10/10/11 En TP : sqlplus : interpréteur SQL, logiciel de SGBDR oracle Venus (bat.6) Licence Serveur de BD Oracle Master Espace utilisateur Compte externe : la prise en charge de l’identification est faite via le compte usager (Identification : sqlplus /@venus/master.info) Compte interne : identification explicite lors de la connexion au serveur de base de données (Identification : user1/user1@venus/master.info) Sqlplus : - Interprétation de langage sql - Edition => nécessité d’utiliser un éditeur externe pour créer des fichiers sql - Exécution du fichier édité : start fichier Types de commande sql : - Propriétaires de sqlplus : commandes permettant d’améliorer les fonctionnalités d’sqlplus o Paramètres de configuration : show all o Montrer l’utilisateur : show user o Structure d’une table : dec nom_table o Formater une colonne : col nom_col for a15 - Propres au langage SQL : s’achève par un ; SQL : - langage de requête structuré standard (utilisable en grande partie sur tous les SGBDR - Plusieurs versions : o SQL-86 : SQL 1 o SQL-92 : SQL 2 o SQL-99 : SQL 3 o SQL-2006 : SQL5 Les langages des BD - LDD : construire les structures de la BD : tables, vues, contraintes : create/drop/alter - LMD : consultation, mise à jour de données : select/inser/update/delete - LCD : poser des autorisations sur le contenu de la base de données : grant/revoke - Langage transactionnel : valider une transaction, définir des points de sauvegarde : commit/rollback/savept LDD : BNF : backus normal form (méta-langage) : | : Ou [] : Caractère facultatif {} : Ensemble Créer une table : create table[schéma.U]nom_table Chaîne de caractères : varchar() Types de données : (entier : integer) ; (réel : float) Date : date Booléen : simaultationt char(1) Exemple : Create table Personne (num integer, nom varchar(20) prenom varchar(15) age integer, genre char(1), Constraint personne_pk primary key (num)) ; Type de clés : - Primaire (intra-table) → primary key - Étrangère (inter-table) → foreign key - Domaine → check - Unicité → unique - Non-nullité → not null LMD : - Insertion de tuples : insert into Personne valeur (1,’Martin’,’Pierre’,’20’,’M’) - Suppression de tous les tuples : delete from personne - Suppression partielle de tuples : delete from personne where num=1 - Modification de tuples : update Personne set age=age+10 where nom=’Martin’ ; - Consultation du contenu de la table Select*from Personne ; Select Liste d’attributs from Liste de tables where Liste de couples propriétés-valeurs Select*from cat ; → voir tables crées en TP