Commandes SQL : DML, DDL, DCL, TCL, DQL avec exemple de requête
Qu'est-ce que SQL?
SQL est un langage de base de données conçu pour la récupération et la gestion de données dans une base de données relationnelle.
SQL est le langage standard pour la gestion de bases de données. Tous les systèmes SGBDR comme MySQL, MS Access, Oracle, Sybase, Postgres et SQL Server utilisent SQL comme langage de base de données standard. Le langage de programmation SQL utilise diverses commandes pour différentes opérations. Nous découvrirons les commandes DCL, TCL, DQL, DDL et DML en SQL avec des exemples.
Pourquoi utiliser SQL ?
Voici les raisons importantes d'utiliser SQL
- Il aide les utilisateurs à accéder aux données dans le Système SGBDR.
- Cela vous aide à décrire les données.
- Il vous permet de définir les données dans une base de données et de manipuler ces données spécifiques.
- À l'aide des commandes SQL dans le SGBD, vous pouvez créer et supprimer des bases de données et des tables.
- SQL vous propose d'utiliser la fonction dans une base de données, de créer une vue et une procédure stockée.
- Vous pouvez définir des autorisations sur les tables, les procédures et les vues.
Bref historique de SQL
Ici, se trouvent des points de repère importants du histoire de SQL:
- 1970 – Le Dr Edgar F. « Ted » Codd décrit un modèle relationnel pour les bases de données.
- 1974 – Apparition du langage de requête structuré.
- 1978 - IBM a publié un produit appelé System/R.
- 1986 - IBM développé le prototype d'une base de données relationnelle, normalisée par l'ANSI.
- 1989- Lancement de la toute première version de SQL
- 1999 – Lancement de SQL 3 avec des fonctionnalités telles que les déclencheurs, l'orientation objet, etc.
- SQL2003- fonctions de fenêtre, fonctionnalités liées à XML, etc.
- SQL2006 - Prise en charge du langage de requête XML
- Prise en charge améliorée par SQL2011 des bases de données temporelles
Types de SQL
Voici cinq types de requêtes SQL largement utilisées.
- Data Definition Language (DDL)
- Manipulation de données Langue (DML)
- Langage de contrôle des données (DCL)
- Langage de contrôle des transactions (TCL)
- Langage de requête de données (DQL)
Voyons chacun d’eux en détail :
Qu'est-ce que le DDL ?
Le langage de définition de données vous aide à définir la structure ou le schéma de la base de données. Découvrons les commandes DDL avec la syntaxe.
Cinq types de commandes DDL dans SQL sont :
CREATE
Les instructions CREATE sont utilisées pour définir le schéma de structure de la base de données :
syntaxe:
CREATE TABLE TABLE_NAME (COLUMN_NAME DATATYPES[,....]);
Par exemple:
Create database university; Create table students; Create view for_students;
GOUTTE
Les commandes Drops suppriment les tables et les bases de données du SGBDR.
Syntaxe
DROP TABLE ;
Par exemple :
Drop object_type object_name; Drop database university; Drop table student;
ALTER
La commande Alters vous permet de modifier la structure de la base de données.
syntaxe:
Pour ajouter une nouvelle colonne dans le tableau
ALTER TABLE table_name ADD column_name COLUMN-definition;
Pour modifier une colonne existante dans le tableau :
ALTER TABLE MODIFY(COLUMN DEFINITION....);
Par exemple :
Alter table guru99 add subject varchar;
TRONQUER
Cette commande permet de supprimer toutes les lignes de la table et de libérer l'espace contenant la table.
syntaxe:
TRUNCATE TABLE table_name;
Mise en situation :
TRUNCATE table students;
Qu’est-ce que le langage de manipulation de données ?
Le langage de manipulation de données (DML) vous permet de modifier l'instance de base de données en insérant, modifiant et supprimant ses données. Il est chargé d’effectuer tous types de modifications de données dans une base de données.
Il existe trois constructions de base qui permettent au programme de base de données et à l'utilisateur de saisir des données et des informations :
Voici quelques commandes DML importantes dans SQL :
- INSERT
- MISE À JOUR
- EFFACER
INSERT
Il s'agit d'une instruction qui est une requête SQL. Cette commande est utilisée pour insérer des données dans la ligne d'un tableau.
syntaxe:
INSERT INTO TABLE_NAME (col1, col2, col3,.... col N) VALUES (value1, value2, value3, .... valueN); Or INSERT INTO TABLE_NAME VALUES (value1, value2, value3, .... valueN);
Par exemple :
INSERT INTO students (RollNo, FIrstName, LastName) VALUES ('60', 'Tom', Erichsen');
MISE À JOUR
Cette commande permet de mettre à jour ou de modifier la valeur d'une colonne du tableau.
syntaxe:
UPDATE table_name SET [column_name1= value1,...column_nameN = valueN] [WHERE CONDITION]
Par exemple :
UPDATE students SET FirstName = 'Jhon', LastName= 'Wick' WHERE StudID = 3;
EFFACER
Cette commande permet de supprimer une ou plusieurs lignes d'un tableau.
syntaxe:
DELETE FROM table_name [WHERE condition];
Par exemple :
DELETE FROM students WHERE FirstName = 'Jhon';
Qu’est-ce que le DCL ?
DCL (Data Control Language) comprend des commandes telles que GRANT et REVOKE, qui sont utiles pour accorder des « droits et autorisations ». D'autres paramètres de contrôle d'autorisation du système de base de données.
Exemples de commandes DCL
Commandes relevant de DCL :
- Subvention
- Revbien
Subvention
Cette commande est utilisée pour donner aux utilisateurs des privilèges d'accès à une base de données.
syntaxe:
GRANT SELECT, UPDATE ON MY_TABLE TO SOME_USER, ANOTHER_USER;
Par exemple :
GRANT SELECT ON Users TO'Tom'@'localhost;
Revbien
Il est utile de sauvegarder les autorisations de l'utilisateur.
syntaxe:
REVOKE privilege_nameON object_nameFROM {user_name |PUBLIC |role_name}
Par exemple :
REVOKE SELECT, UPDATE ON student FROM BCA, MCA;
Qu’est-ce que TCL ?
Le langage de contrôle des transactions ou les commandes TCL traitent la transaction au sein de la base de données.
S’ENGAGER
Cette commande est utilisée pour enregistrer toutes les transactions dans la base de données.
syntaxe:
Commit;
Par exemple :
DELETE FROM Students WHERE RollNo =25; COMMIT;
Rollback
La commande Rollback vous permet d'annuler les transactions qui n'ont pas déjà été enregistrées dans la base de données.
syntaxe:
ROLLBACK;
Mise en situation :
DELETE FROM Students WHERE RollNo =25;
POINT DE SAUVEGARDE
Cette commande vous aide à définir un point de sauvegarde dans une transaction.
syntaxe:
SAVEPOINT SAVEPOINT_NAME;
Mise en situation :
SAVEPOINT RollNo;
Qu'est-ce que DQL?
Le langage de requête de données (DQL) est utilisé pour récupérer les données de la base de données. Il n'utilise qu'une seule commande :
SELECT
Cette commande vous aide à sélectionner l'attribut en fonction de la condition décrite par la clause WHERE.
syntaxe:
SELECT expressions FROM TABLES WHERE conditions;
Par exemple :
SELECT FirstName FROM Student WHERE RollNo > 15;
Résumé
- SQL est un langage de base de données conçu pour la récupération et la gestion de données dans une base de données relationnelle.
- Il aide les utilisateurs à accéder aux données du système SGBDR
- En 1974, le terme langage de requête structuré est apparu.
- Cinq types de requêtes SQL sont 1) Langage de définition de données (DDL) 2) Langage de manipulation de données (DML) 3) Langage de contrôle de données (DCL) 4) Langage de contrôle de transactions (TCL) et 5) Langage de requête de données (DQL)
- Le langage de définition de données (DDL) vous aide à définir la structure ou le schéma de la base de données.
- Le langage de manipulation de données (DML) vous permet de modifier l'instance de base de données en insérant, modifiant et supprimant ses données.
- DCL (Data Control Language) comprend des commandes telles que GRANT et REVOKE, qui sont utiles pour accorder des « droits et autorisations ».
- Le langage de contrôle des transactions ou les commandes TCL traitent la transaction au sein de la base de données.
- Le langage de requête de données (DQL) est utilisé pour récupérer les données du base de données.