Maison > base de données > tutoriel mysql > Après avoir mis à jour une valeur dans une vue spécifique, MySQL met-il à jour la même valeur dans la table de base et ses vues associées (le cas échéant) ?

Après avoir mis à jour une valeur dans une vue spécifique, MySQL met-il à jour la même valeur dans la table de base et ses vues associées (le cas échéant) ?

WBOY
Libérer: 2023-08-24 09:37:02
avant
1385 Les gens l'ont consulté

更新特定视图中的任何值后,MySQL 是否会更新基表及其关联视图(如果有)中的相同值?

Oui, MySQL mettra à jour la valeur, si elle est mise à jour dans une vue, dans la table de base ainsi que dans ses vues associées Pour l'illustrer nous prenons l'exemple de la table Student_info ayant les données suivantes −

.
mysql> Select * from student_info;
+------+---------+------------+------------+
| id   | Name    | Address    | Subject    |
+------+---------+------------+------------+
| 101  | YashPal | Amritsar   | History    |
| 105  | Gaurav  | Chandigarh | Literature |
| 125  | Raman   | Shimla     | Computers  |
| NULL | Ram     | Jhansi     | Computers  |
+------+---------+------------+------------+
4 rows in set (0.00 sec)
Copier après la connexion

Ce qui suit est la vue 'Info' créée sur la base de la table 'Student_info'

mysql> Select * from Info;
+------+---------+------------+
| Id   | Name    | Subject    |
+------+---------+------------+
| 101  | YashPal | History    |
| 105  | Gaurav  | Literature |
| 125  | Raman   | Computers  |
| NULL | Ram     | Computers  |
+------+---------+------------+
4 rows in set (0.00 sec)
Copier après la connexion

Maintenant, dans la requête suivante, nous mettrons à jour la vue 'Info' −

mysql> Update info set id = 130 where Name = 'Ram';
Query OK, 1 row affected (0.88 sec)

mysql> Select * from Info;
+------+---------+------------+
| Id   | Name    | Subject    |
+------+---------+------------+
| 101  | YashPal | History    |
| 105  | Gaurav  | Literature |
| 125  | Raman   | Computers  |
| 130  | Ram     | Computers  |
+------+---------+------------+
4 rows in set (0.00 sec)
Copier après la connexion

L'ensemble de résultats ci-dessus montre que la vue 'Info' a été mis à jour.

mysql> Select * from student_info;
+------+---------+------------+------------+
| id   | Name    | Address    | Subject    |
+------+---------+------------+------------+
| 101  | YashPal | Amritsar   | History    |
| 105  | Gaurav  | Chandigarh | Literature |
| 125  | Raman   | Shimla     | Computers  |
| 130  | Ram     | Jhansi     | Computers  |
+------+---------+------------+------------+
4 rows in set (0.00 sec)
Copier après la connexion

Le résultat défini ci-dessus montre que lorsque nous mettons à jour la vue nommée 'info', la table de base est également mise à jour.

Ci-dessous se trouve une vue nommée 'info_less' créée à partir de la vue 'info', lorsque nous mettrons à jour la vue 'info', elle sera également mise à jour.

mysql> Select * from info_less;
+------+-------+-----------+
| Id   | Name  | Subject   |
+------+-------+-----------+
| 125  | Raman | Computers |
| 130  | Ram   | Computers |
+------+-------+-----------+
2 rows in set (0.00 sec)
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal