Comment créer une vue dans MySQL

Comment créer une vue dans MySQL
Dans MySQL, une vue est une table virtuelle qui ne stocke pas de données mais affiche des données stockées dans d'autres tables. Les vues ne sont que des requêtes SQL car elles stockent des requêtes SQL qui renvoient un ensemble de résultats. Ils sont également connus sous le nom de tables virtuelles.

Ce tutoriel explique comment créer et utiliser les vues MySQL dans votre base de données pour effectuer diverses actions. Par exemple, vous pouvez utiliser des vues pour masquer les données spécifiques des utilisateurs, leur permettant ainsi d'afficher les données stockées dans un tableau à l'aide d'une vue. Les vues peuvent également permettre aux développeurs de créer des connexions simples et abstraites à une base de données.

Vues: utilisation de base

Vous pouvez utiliser la syntaxe générale ci-dessous pour créer une vue dans MySQL:

Créer [ou remplacer] View 'View_name' comme sélectionné Cols FROM TBL_NAME;

Nous commençons par appeler la clause Create View, suivie du nom de la vue que nous souhaitons créer. Le nom de la vue doit être unique dans une base de données et ne doit pas être le même nom qu'un tableau existant. Cela est dû à la fonction où les vues et les tables partagent un espace de noms similaire.

La clause ou remplacer est un paramètre facultatif qui vous permet de remplacer une vue existante par la vue actuelle. Si cela n'est pas spécifié, la création d'une vue avec un nom qui existe renverra une erreur.

Enfin, nous spécifions la clause SELECT suivie des noms des colonnes pour la vue. Il est bon de noter que vous pouvez également ajouter des conditions à l'instruction pour sélectionner des tables spécifiques où les conditions sont remplies.

Exemple de cas d'utilisation

Laissez-nous utiliser divers exemples pour illustrer comment nous pouvons créer des vues dans MySQL.

Pour créer une vue simple, nous pouvons utiliser n'importe quelle base de données d'échantillons telles que le Sakila Exemple DB ou en créer un. Par souci de simplicité, j'utiliserai la base de données Sakila. Considérez la requête ci-dessous pour créer une vue simple.

Utilisez Sakila;
Créer une vue Sample_view comme sélectionner Rental_id, montant dans le groupe de paiement par Rental_id;
Montrer des tables;

Une fois que nous aurons exécuté les requêtes ci-dessus, nous créerons une vue avec les colonnes spécifiées. Vous pouvez voir la vue créée en appelant des tables Show dans MySQL comme indiqué ci-dessous:

----------Troncée----------------------
| Sample_view |
| Personnel |
| Staff_list |
| Store |
+----------------------------+

NOTE: Comme mentionné, les vues et les tables partagent le même espace de noms; Ainsi, ils peuvent être considérés comme une table dans la commande ci-dessus. Cependant, ce n'est pas un tableau qui peut être vu en utilisant la commande Show Full:

| Sample_view | Voir |

Une fois la requête créée, vous pouvez interroger les informations stockées comme s'il s'agissait d'une table MySQL normale. Par exemple:

SELECT * dans Sample_View Limit 5;
+-----------+--------+
| Rental_id | Montant |
+-----------+--------+
| NULL | 1.99 |
| 1 | 2.99 |
| 2 | 2.99 |
| 3 | 3.99 |
| 4 | 4.99 |
+-----------+--------+
5 lignes en jeu (0.04 SEC)

La sortie dépendra des colonnes stockées dans la vue.

Comment mettre à jour une vue

MySQL vous permet également de modifier ou de mettre à jour les informations dans une vue sans la supprimer en utilisant la clause alter.

La syntaxe générale pour mettre à jour une vue est:

ALLER VIEW VIEW_NAME AS SELECT COLS FROM TABLE_NAME;

Par exemple, nous pouvons effectuer une mise à jour simple du Sample_View en ajoutant une colonne avec la somme des valeurs comme indiqué dans la requête ci-dessous:

MySQL> ALLER VIEW Sample_View comme sélectionner Rental_id, Montant, Sum (Montant * 10) dans le groupe de paiement par Rental_ID;
MySQL> DESC Sample_View;
+------------------+---------------+------+-----+---------+-------+
| Champ | Type | NULL | Clé | Par défaut | Extra |
+------------------+---------------+------+-----+---------+-------+
| Rental_id | int | Oui | | NULL | |
| Montant | décimal (5,2) | Non | | NULL | |
| Somme (montant * 10) | décimal (29,2) | Oui | | NULL | |
+------------------+---------------+------+-----+---------+-------+

La requête ci-dessus met à jour les données stockées dans la vue sans détruire la vue existante.

Comment laisser tomber une vue

La suppression d'une vue existante dans MySQL est aussi simple que d'appeler la clause de dépôt suivie du nom de la vue.

Par exemple, pour supprimer l'échantillon_view créé dans les sections ci-dessus, nous pouvons faire:

View de dépôt si existe un exemple_view;

La requête ci-dessus détruit la vue spécifiée et toutes les données stockées.

Conclusion

Dans ce tutoriel, vous avez appris à créer et à utiliser des vues MySQL pour créer des copies d'une table de base de données.