Tutoriel MySQL est le deuxième blog de cette série de blogs. Dans le blog précédent ‘Qu'est-ce que MySQL‘ , je vous ai présenté toutes les terminologies de base que vous deviez comprendre avant de vous lancer dans cette base de données relationnelle. Dans ce blog de MySQL, vous apprendrez toutes les opérations et commandes dont vous avez besoin pour explorer vos bases de données.
Les sujets abordés dans ce blog sont principalement divisés en 4 catégories :DDL, DML, DCL et TCL.
- Le LDD (Data Definition Language) comprend les commandes utilisées pour définir la base de données. Exemple :CREATE, DROP, ALTER, TRUNCATE, COMMENT, RENAME.
- Le LMD (Data Manipulation Language) commandes traitent de la manipulation des données présentes dans la base de données. Exemple :SÉLECTIONNER, INSÉRER, METTRE À JOUR, SUPPRIMER.
- Le DCL Les commandes (Data Control Language) traitent des droits, permissions et autres contrôles du système de base de données. Exemple :GRANT, INVOKE
- Le TCL (Transaction Control Language) comprend les commandes qui traitent principalement de la transaction de la base de données.
Outre les commandes, voici les autres sujets abordés dans le blog :
- Différents types de clés dans la base de données
- Contraintes utilisées dans la base de données
- Requêtes imbriquées
- Joints
- Définir les opérations
Nous allons couvrir chacune de ces catégories une par une.
Dans ce blog sur le didacticiel MySQL, je vais considérer la base de données ci-dessous comme exemple, pour vous montrer comment écrire des commandes.
StudentID | StudentName | ParentName | Adresse | Ville | Code postal | Pays | Frais |
01 | Haznitiz | Emiz | Dellys Road | Afir | 35110 | Algérie | 42145 |
02 | Shubham | Narayan | MG Road | Bangalore | 560001 | Inde | 45672 |
03 | Salomao | Valentim | Mayo Road | Rio Claro | 27460 | Brésil | 65432 |
04 | Vishal | Ramesh | Queens Quay | Toronto | 416 | Canada | 23455 |
05 | Parc Jimin | Kim Tai Hyung | Gangnam Street | Séoul | 135081 | Corée du Sud | 22353 |
Tableau 1 : Exemple de base de données - Tutoriel MySQL
Alors, commençons maintenant !
Abonnez-vous à notre chaîne YouTube pour recevoir de nouvelles mises à jour.. !
Tutoriel MySQL :Commandes de définition de données (DDL)
Cette section se compose de ces commandes, par lesquelles vous pouvez définir votre base de données. Les commandes sont :
- CRÉER
- ALTER
- DÉPOSER
- TRUNCATE
- RENOMMER
Maintenant, avant de commencer avec les commandes, laissez-moi juste vous dire comment mentionner les commentaires dans MySQL.
Commentaires
Comme tout autre langage de programmation, il existe principalement deux types de commentaires.
- Commentaires sur une seule ligne – Les commentaires sur une seule ligne commencent par '-'. Ainsi, tout texte mentionné après — jusqu'à la fin de la ligne sera ignoré par le compilateur.
Exemple :
--Select all: SELECT * FROM Students;
- Commentaires multi-lignes – Les commentaires multilignes commencent par /* et se terminent par */. Ainsi, tout texte mentionné entre /* et */ sera ignoré par le compilateur.
Exemple :
/*Select all the columns of all the records in the Students table:*/ SELECT * FROM Students;
Maintenant que vous savez comment mentionner les commentaires dans MySQL, continuons avec les commandes DDL.
CRÉER
L'instruction de création est utilisée pour créer un schéma, des tables ou un index.
La déclaration "CRÉER UN SCHÉMA"
Cette instruction est utilisée pour créer une base de données.
Syntaxe :
CREATE SCHEMA Database_Name;
Exemple :
CREATE SCHEMA StudentsInfo;
La déclaration "CRÉER UNE TABLE"
Cette instruction est utilisée pour créer une nouvelle table dans une base de données.
Syntaxe :
CREATE TABLE table_name ( column1 datatype, column2 datatype, column3 datatype, .... );
Exemple :
CREATE TABLE Students ( StudentID int, StudentName varchar(255), ParentName varchar(255), Address varchar(255), PostalCode int, City varchar(255) );
L'instruction "CREATE TABLE AS"
Cette instruction est utilisée pour créer une nouvelle table à partir d'une table existante. Ainsi, cette table obtient les mêmes définitions de colonne que celle de la table existante.
Syntaxe :
CREATE TABLE new_table_name AS SELECT column1, column2,... FROM existing_table_name WHERE ....;
Exemple :
CREATE TABLE ExampleTable AS SELECT Studentname, Parentname FROM Students;
MODIFIER
La commande ALTER est utilisée pour ajouter, modifier ou supprimer des contraintes ou des colonnes.
La déclaration "ALTER TABLE"
Cette instruction est utilisée pour ajouter, modifier ou supprimer des contraintes et des colonnes d'une table.
Syntaxe :
ALTER TABLE table_name ADD column_name datatype;
Exemple :
ALTER TABLE Students ADD DateOfBirth date;
DÉPOSER
La commande DROP est utilisée pour supprimer la base de données, les tables ou les colonnes.
La déclaration "DROP SCHEMA"
Cette instruction est utilisée pour supprimer le schéma complet.
Syntaxe :
DROP SCHEMA schema_name;
Exemple :
DROP SCHEMA StudentsInfo;
La déclaration "DOP TABLE"
Cette instruction est utilisée pour supprimer le tableau entier avec toutes ses valeurs.
Syntaxe :
DROP TABLE table_name;
Exemple :
DROP TABLE table_name;
TRUNCATE
Cette instruction est utilisée pour supprimer les données présentes dans un tableau, mais le tableau n'est pas supprimé.
Syntaxe :
TRUNCATE TABLE table_name;
Exemple :
TRUNCATE TABLE Students;
RENOMMER
Cette instruction est utilisée pour renommer une ou plusieurs tables.
Syntaxe :
RENAME TABLE tbl_name TO new_tbl_name [, tbl_name2 TO new_tbl_name2] ...
Exemple :
RENAME Students TO Infostudents;
Maintenant, avant de passer aux sections suivantes, laissez-moi vous indiquer les différents types de clés et de contraintes que vous devez mentionner lors de la manipulation des bases de données.
Tutoriel MySQL : Différents types de clés dans la base de données
Il existe principalement 5 types de Clés, qui peuvent être mentionnés dans la base de données.
- Clé du candidat – L'ensemble minimal d'attributs qui peuvent identifier de manière unique un tuple est appelé clé candidate. Une relation peut contenir plusieurs clés candidates, la clé étant soit une clé simple, soit une clé composite.
- Super Clé – L'ensemble d'attributs qui peuvent identifier de manière unique un tuple est appelé Super Key. Ainsi, une clé candidate est une super clé, mais l'inverse n'est pas vrai.
- Clé primaire – Un ensemble d'attributs qui peuvent être utilisés pour identifier de manière unique chaque tuple est également une clé primaire. Donc, s'il y a 3-4 clés candidates présentes dans une relation, alors parmi celles-ci, une peut être choisie comme clé primaire.
- Clé alternative – La clé candidate autre que la clé primaire est appelée clé alternative.
- Clé étrangère – Un attribut qui ne peut prendre que les valeurs présentes comme valeurs d'un autre attribut, est la clé étrangère de l'attribut auquel il se réfère.
Tutoriel MySQL : Contraintes utilisées dans la base de données
Reportez-vous à l'image ci-dessous pour connaître les contraintes utilisées dans la base de données.
Illustration 1 : Contraintes utilisées dans la base de données - Tutoriel MySQL
Maintenant que vous connaissez les différents types de clés et de contraintes, passons à la section suivante, à savoir les commandes de manipulation de données.
Vous voulez être un administrateur de base de données certifié ?Tutoriel MySQL : Commandes de manipulation de données (DML)
Cette section se compose de ces commandes, par lesquelles vous pouvez manipuler votre base de données. Les commandes sont :
- UTILISER
- INSÉRER
- MISE À JOUR
- SUPPRIMER
- SÉLECTIONNER
Outre ces commandes, il existe également d'autres opérateurs/fonctions de manipulation tels que :
- OPÉRATEURS LOGIQUES
- OPÉRATEURS ARITHMÉTIQUES, BITWISE, DE COMPARAISON ET COMPOSÉS
- FONCTIONS D'AGRÉGATION
- OPÉRATEURS SPÉCIAUX
UTILISER
L'instruction USE est utilisée pour mentionner quelle base de données doit être utilisée pour effectuer toutes les opérations.
Syntaxe :
USE Database_name;
Exemple :
USE StudentsInfo;
INSÉRER
Cette instruction est utilisée pour insérer de nouveaux enregistrements dans une table.
Syntaxe :
L'instruction INSERT INTO peut être écrite des deux manières suivantes :
INSERT INTO table_name (column1, column2, column3, ...) VALUES (value1, value2, value3, ...); --You need not mention the column names INSERT INTO table_name VALUES (value1, value2, value3, ...);
Exemple :
INSERT INTO Infostudents(StudentID, StudentName, ParentName, Address, City, PostalCode, Country) VALUES ('06', 'Sanjana','Jagannath', 'Banjara Hills', 'Hyderabad', '500046', 'India'); INSERT INTO Infostudents VALUES ('07', 'Shivantini','Praveen', 'Camel Street', 'Kolkata', '700096', 'India');
MISE À JOUR
Cette instruction est utilisée pour modifier les enregistrements existants dans une table.
Syntaxe :
UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE condition;
Exemple :
UPDATE Infostudents SET StudentName = 'Alfred', City= 'Frankfurt' WHERE StudentID = 1;
SUPPRIMER
Cette instruction est utilisée pour supprimer des enregistrements existants dans une table.
Syntaxe :
DELETE FROM table_name WHERE condition;
Exemple :
DELETE FROM Infostudents WHERE StudentName='Salomao';
SÉLECTIONNER
Cette instruction est utilisée pour sélectionner des données dans une base de données et les données renvoyées sont stockées dans une table de résultats, appelée result-set .
Voici les deux manières d'utiliser cette instruction :
Syntaxe :
SELECT column1, column2, ... FROM table_name; --(*) is used to select all from the table SELECT * FROM table_name;
Exemple :
SELECT StudentName, City FROM Infostudents; SELECT * FROM Infostudents;
Outre le mot-clé SELECT individuel, nous verrons également les déclarations suivantes, qui sont utilisées avec le mot-clé SELECT :
- DISTINCT
- ORDER PAR
- GROUPER PAR
- Clause HAVING
La déclaration "SELECT DISTINCT"
Cette instruction est utilisée pour renvoyer uniquement des valeurs distinctes ou différentes. Ainsi, si vous avez une table avec des valeurs en double, vous pouvez utiliser cette instruction pour répertorier des valeurs distinctes.
Syntaxe :
SELECT DISTINCT column1, column2, ... FROM table_name;
Exemple :
SELECT Country FROM Students;
L'instruction "ORDER BY"
Cette instruction est utilisée pour trier les résultats souhaités par ordre croissant ou décroissant. Par défaut, les résultats seraient triés par ordre croissant. Si vous souhaitez que les enregistrements du jeu de résultats soient classés par ordre décroissant, utilisez le DESC mot-clé.
Syntaxe :
SELECT column1, column2, ... FROM table_name ORDER BY column1, column2, ... ASC|DESC;
Exemple :
SELECT * FROM Infostudents ORDER BY Country; SELECT * FROM Infostudents ORDER BY Country DESC; SELECT * FROM Infostudents ORDER BY Country, StudentName; SELECT * FROM Infostudents ORDER BY Country ASC, StudentName DESC;
La déclaration "GROUPER PAR"
Cette instruction est utilisée avec les fonctions d'agrégation pour regrouper le jeu de résultats par une ou plusieurs colonnes.
Syntaxe :
SELECT column_name(s) FROM table_name WHERE condition GROUP BY column_name(s) ORDER BY column_name(s);
Exemple :
SELECT COUNT(StudentID), Country FROM Infostudents GROUP BY Country ORDER BY COUNT(StudentID) DESC;
L'énoncé de la clause "HAVING"
Depuis le OÙ mot-clé ne peut pas être utilisé avec les fonctions d'agrégation, la clause HAVING a été introduite.
Syntaxe :
SELECT column_name(s) FROM table_name WHERE condition GROUP BY column_name(s) HAVING condition ORDER BY column_name(s);
Exemple :
SELECT COUNT(StudentID), City FROM Infostudents GROUP BY City HAVING COUNT(Fees) > 23000;
OPÉRATEURS LOGIQUES
Cet ensemble d'opérateurs se compose d'opérateurs logiques tels que ET/OU/NON.
ET OPÉRATEUR
L'opérateur AND est utilisé pour filtrer les enregistrements qui reposent sur plusieurs conditions. Cet opérateur affiche les enregistrements qui satisfont toutes les conditions séparées par AND et donnent la sortie TRUE.
Syntaxe :
SELECT column1, column2, ... FROM table_name WHERE condition1 AND condition2 AND condition3 ...;
Exemple :
SELECT * FROM Infostudents WHERE Country='Brazil' AND City='Rio Claro';
OU OPÉRATEUR
L'opérateur OR affiche les enregistrements qui satisfont à l'une des conditions séparées par OR et donne la sortie TRUE.
Syntaxe :
SELECT column1, column2, ... FROM table_name WHERE condition1 OR condition2 OR condition3 ...;
Exemple :
SELECT * FROM Infostudents WHERE City='Toronto' OR City='Seoul';
NON OPÉRATEUR
Cet opérateur affiche un enregistrement lorsque la ou les conditions ne sont PAS VRAIES.
Syntaxe :
SELECT column1, column2, ... FROM table_name WHERE NOT condition;
Exemple :
SELECT * FROM Infostudents WHERE NOT Country='India'; --You can also combine all the above three operators and write a query like this: SELECT * FROM Infostudents WHERE Country='India' AND (City='Bangalore' OR City='Canada');Intéressé à casser des entretiens pour l'administrateur de base de données ?
OPÉRATEURS ARITHMÉTIQUES, BITWISE, DE COMPARAISON ET COMPOSÉS
Reportez-vous à l'image ci-dessous.
Illustration 2 : Opérateurs arithmétiques, binaires, de comparaison et composés - Tutoriel MySQL
FONCTIONS D'AGRÉGATION
Cette section de l'article comprend les fonctions suivantes :
- MIN()
- MAX()
- COUNT()
- AVG()
- SOMME()
Fonction MIN()
Cette fonction renvoie la plus petite valeur de la colonne sélectionnée dans un tableau.
Syntaxe :
SELECT MIN(column_name) FROMtable_name WHEREcondition;
Exemple :
SELECT MIN(StudentID) AS SmallestID FROM Infostudents;
Fonction MAX()
Cette fonction renvoie la plus grande valeur de la colonne sélectionnée dans un tableau.
Syntaxe :
SELECT MAX(column_name) FROM table_name WHERE condition;
Exemple :
SELECT MAX(Fees) AS MaximumFees FROM Infostudents;
Fonction COUNT()
Cette fonction renvoie le nombre de lignes qui correspondent aux critères spécifiés.
Syntaxe :
SELECT COUNT(column_name) FROM table_name WHERE condition;
Exemple :
SELECT COUNT(StudentID) FROM Infostudents;
Fonction AVG()
Cette fonction renvoie la valeur moyenne d'une colonne numérique que vous choisissez.
Syntaxe :
SELECT AVG(column_name) FROM table_name WHERE condition;
Exemple :
SELECT AVG(Fees) FROM Infostudents;
Fonction SOMME()
Cette fonction renvoie la somme totale d'une colonne numérique que vous choisissez.
Syntaxe :
SELECT SUM(column_name) FROM table_name WHERE condition;
Exemple :
SELECT SUM(Fees) FROM Infostudents;
OPÉRATEURS SPÉCIAUX
Cette section inclut les opérateurs suivants :
- ENTRE
- EST NULL
- LIKE
- IN
- EXISTE
- TOUS
- TOUT
Opérateur ENTRE
Cet opérateur est un opérateur inclusif qui sélectionne des valeurs (nombres, textes ou dates) dans une plage donnée.
Syntaxe :
SELECT column_name(s) FROM table_name WHERE column_name BETWEEN value1 AND value2;
Exemple :
SELECT * FROM Infostudents WHERE Fees BETWEEN 20000 AND 40000;
Opérateur IS NULL
Puisqu'il n'est pas possible de tester les valeurs NULL avec les opérateurs de comparaison (=, <,>), nous pouvons utiliser les opérateurs IS NULL et IS NOT NULL à la place.
Syntaxe :
--Syntax for IS NULL SELECT column_names FROM table_name WHERE column_name IS NULL; --Syntax for IS NOT NULL SELECT column_names FROM table_name WHERE column_name IS NOT NULL;
Exemple :
SELECT StudentName, ParentName, Address FROM Infostudents WHERE Address IS NULL; SELECT StudentName, ParentName, Address FROM Infostudents WHERE Address IS NOT NULL;
Opérateur LIKE
Cet opérateur est utilisé dans une clause WHERE pour rechercher un modèle spécifié dans une colonne d'une table.
Les deux caractères génériques mentionnés ci-dessous sont utilisés conjointement avec l'opérateur LIKE :
- % :le signe de pourcentage représente zéro, un ou plusieurs caractères
- _ – Le trait de soulignement représente un seul caractère
Syntaxe :
SELECT column1, column2, ... FROM table_name WHERE column LIKE pattern;
Reportez-vous au tableau suivant pour les différents modèles que vous pouvez mentionner avec l'opérateur LIKE.
LIKE Operator | Description |
WHERE CustomerName LIKE ‘z% | Recherche toutes les valeurs commençant par "z" |
WHERE CustomerName LIKE ‘%z’ | Recherche toutes les valeurs qui se terminent par "z" |
WHERE CustomerName LIKE ‘%and%’ | Recherche toutes les valeurs qui ont "et" dans n'importe quelle position |
WHERE CustomerName LIKE ‘_s%’ | Recherche toutes les valeurs qui ont "s" en deuxième position. |
WHERE CustomerName LIKE 'd_%_%' | Recherche toutes les valeurs commençant par "d" et contenant au moins 3 caractères |
WHERE ContactName LIKE ‘j%l’ | Recherche toutes les valeurs qui commencent par « j » et se terminent par « l » |
Tableau 2 : Modèles mentionnés avec l'opérateur LIKE - Tutoriel MySQL
Exemple :
SELECT * FROM Infostudents WHERE StudentName LIKE 'S%';
Opérateur IN
Il s'agit d'un opérateur abrégé pour plusieurs conditions OU qui vous permet de spécifier plusieurs valeurs dans une clause WHERE.
Syntaxe :
SELECT column_name(s) FROM table_name WHERE column_name IN (value1, value2, ...);
Exemple :
SELECT * FROM Infostudents WHERE Country IN ('Algeria', 'India', 'Brazil');
Remarque : Vous pouvez également utiliser IN lors de l'écriture de requêtes imbriquées. Considérez la syntaxe ci-dessous :
Opérateur EXISTS
Cet opérateur est utilisé pour tester si un enregistrement existe ou non.
Syntaxe :
SELECT column_name(s) FROM table_name WHERE EXISTS (SELECT column_name FROM table_name WHERE condition);
Exemple :
SELECT StudentName FROM Infostudents WHERE EXISTS (SELECT ParentName FROM Infostudents WHERE StudentId = 05 AND Price < 25000);
Opérateur ALL
Cet opérateur est utilisé avec une clause WHERE ou HAVING et renvoie true si toutes les valeurs de la sous-requête remplissent la condition.
Syntaxe :
SELECT column_name(s) FROM table_name WHERE column_name operator ALL (SELECT column_name FROM table_name WHERE condition);
Exemple :
SELECT StudentName FROM Infostudents WHERE StudentID = ALL (SELECT StudentID FROM Infostudents WHERE Fees > 20000);
N'IMPORTE QUEL Opérateur
Similaire à l'opérateur ALL, l'opérateur ANY est également utilisé avec une clause WHERE ou HAVING et renvoie true si l'une des valeurs de la sous-requête satisfait à la condition.
Syntaxe :
SELECT column_name(s) FROM table_name WHERE column_name operator ANY (SELECT column_name FROM table_name WHERE condition);
Exemple :
SELECT StudentName FROM Infostudents WHERE StudentID = ANY (SELECT SttudentID FROM Infostudents WHERE Fees BETWEEN 22000 AND 23000);
Maintenant que je vous ai beaucoup parlé des commandes DML, permettez-moi de vous parler brièvement des requêtes imbriquées, des jointures et des opérations d'ensemble.
Vous voulez savoir comment mettre en place une base de données relationnelle dans le cloud ?Tutoriel MySQL : Requêtes imbriquées
Requêtes imbriquées sont les requêtes qui ont une requête externe et une sous-requête interne. Donc, fondamentalement, la sous-requête est une requête imbriquée dans une autre requête telle que SELECT, INSERT, UPDATE ou DELETE. Reportez-vous à l'image ci-dessous :
Figure 3 : Représentation des requêtes imbriquées - Tutoriel MySQL
Tutoriel MySQL : Joints
JOINS sont utilisés pour combiner des lignes de deux tables ou plus, en fonction d'une colonne liée entre ces tables. Voici les types de jointures :
- JOINTURE INTERNE : Cette jointure renvoie les enregistrements dont les valeurs correspondent dans les deux tables.
- JOINTURE COMPLÈTE : Cette jointure renvoie tous les enregistrements qui ont une correspondance dans la table de gauche ou de droite.
- JOINTURE GAUCHE : This join returns records from the left table, and also those records which satisfy the condition from the right table.
- RIGHT JOIN: This join returns records from the right table, and also those records which satisfy the condition from the left table.
Refer to the image below.
Fig 4: Representation Of Joins – MySQL Tutorial
Let’s consider the below table apart from the Infostudents table, to understand the syntax of joins.
CourseID | StudentID | CourseName | StartDate |
1 | 10 | DevOps | 09-09-2018 |
2 | 11 | Blockchain | 07-04-2018 |
3 | 12 | Python | 08-06-2018 |
Table 3: Sample Database – MySQL Tutorial
INNER JOIN
Syntax:
SELECT column_name(s) FROM table1 INNER JOIN table2 ON table1.column_name = table2.column_name;
Example:
SELECT Courses.CourseID, Infostudents.StudentName FROM Courses INNER JOIN Infostudents ON Courses.StudentID = Infostudents.StudentID;
FULL JOIN
Syntax:
SELECT column_name(s) FROM table1 FULL OUTER JOIN table2 ON table1.column_name = table2.column_name;
Example:
SELECT Infostudents.StudentName, Courses.CourseID FROM Infostudents FULL OUTER JOIN Orders ON Infostudents.StudentID=Orders.StudentID ORDER BY Infostudents.StudentName;
LEFT JOIN
Syntax:
SELECT column_name(s) FROM table1 LEFT JOIN table2 ON table1.column_name = table2.column_name;
Example:
SELECT Infostudents.StudentName, Courses.CourseID FROM Infostudents LEFT JOIN Courses ON Infostudents.CustomerID = Courses.StudentID ORDER BY Infostudents.StudentName;
RIGHT JOIN
Syntax:
SELECT column_name(s) FROM table1 RIGHT JOIN table2 ON table1.column_name = table2.column_name;
Example:
SELECT Courses.CourseID FROM Courses RIGHT JOIN Infostudents ON Courses.StudentID = Infostudents.StudentID ORDER BY Courses.CourseID;
MySQL Tutorial: Set Operations
There are mainly three set operations:UNION, INTERSECT, SET DIFFERENCE. You can refer to the image below to understand the set operations in SQL.
Now, that you guys know the DML commadsn. Let’s move onto our next section and see the DCL commands.
MySQL Tutorial: Data Control (DCL) Commands
This section consists of those commands which are used to control privileges in the database. The commands are:
- GRANT
- REVOKE
GRANT
This command is used to provide user access privileges or other privileges for the database.
Syntax:
GRANT privileges ON object TO user;
Example:
GRANT CREATE ANY TABLE TO localhost;
REVOKE
This command is used to withdraw user’s access privileges given by using the GRANT command.
Syntax:
REVOKE privileges ON object FROM user;
Example:
REVOKE INSERT ON *.* FROM Infostudents;
Now, let’s move on to the last section of this blog i.e. the TCL Commands.
MySQL Tutorial: Transaction Control (TCL) Commands
This section of commands mainly deals with the transaction of the database. The commands are:
- COMMIT
- ROLLBACK
- SAVEPOINT
- RELEASE SAVEPOINT
- SET TRANSACTION
COMMIT
This command saves all the transactions to the database since the last COMMIT or ROLLBACK command.
Syntax:
COMMIT;
Example:
DELETE FROM Infostudents WHERE Fees = 42145; COMMIT;
ROLLBACK
This command is used to undo transactions since the last COMMIT or ROLLBACK command was issued.
Syntax:
ROLLBACK;
Example:
DELETE FROM Infostudents WHERE Fees = 42145; ROLLBACK;
SAVEPOINT
This command creates points within the groups of transactions in which to ROLLBACK. So, with this command, you can simply roll the transaction back to a certain point without rolling back the entire transaction.
Syntax:
SAVEPOINT SAVEPOINT_NAME; --Syntax for saving the SAVEPOINT ROLLBACK TO SAVEPOINT_NAME; --Syntax for rolling back to the Savepoint command
Example:
SAVEPOINT SP1; DELETE FROM Infostudents WHERE Fees = 42145; SAVEPOINT SP2;
RELEASE SAVEPOINT
You can use this command to remove a SAVEPOINT that you have created.
Syntax:
RELEASE SAVEPOINT SAVEPOINT_NAME;
Example:
RELEASE SAVEPOINT SP2;
SET TRANSACTION
This command gives a name to the transaction.
Syntax:
SET TRANSACTION [ READ WRITE | READ ONLY ];
I hope you enjoyed reading this blog on MySQL Tutorial blog. We have seen the different commands that will help you write queries and play around with your databases.
Interested in learning more about MySQL?If you wish to learn more about MySQL and get to know this open source relational database, then check out our MySQL DBA Certification Training which comes with instructor-led live training and real-life project experience. This training will help you understand MySQL in depth and help you achieve mastery over the subject.
Got a question for us? Please mention it in the comments section of ”MySQL Tutorial ” and I will get back to you.