Heim  >  Artikel  >  Datenbank  >  Aktualisiert MySQL nach der Aktualisierung eines Werts in einer bestimmten Ansicht denselben Wert in der Basistabelle und den zugehörigen Ansichten (falls vorhanden)?

Aktualisiert MySQL nach der Aktualisierung eines Werts in einer bestimmten Ansicht denselben Wert in der Basistabelle und den zugehörigen Ansichten (falls vorhanden)?

WBOY
WBOYnach vorne
2023-08-24 09:37:021338Durchsuche

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

Ja, MySQL aktualisiert den Wert, wenn er in einer Ansicht aktualisiert wird, sowohl in der Basistabelle als auch in den zugehörigen Ansichten. Zur Veranschaulichung nehmen wir das Beispiel der Tabelle Student_info mit den folgenden Daten: −

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)

Das Folgende ist die Ansicht „Info“, die auf der Grundlage der Tabelle „Student_info“ erstellt wurde

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)

In der folgenden Abfrage aktualisieren wir nun die Ansicht „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)

Die obige Ergebnismenge zeigt, dass die Ansicht „Info“ hat aktualisiert worden.

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)

Die obige Ergebnismenge zeigt, dass, wenn wir die Ansicht mit dem Namen „info“ aktualisieren, auch die Basistabelle aktualisiert wird.

Unten sehen Sie eine Ansicht mit dem Namen „info_less“, die auf der Grundlage der Ansicht „info“ erstellt wurde. Wenn wir die Ansicht „info“ aktualisieren, wird diese ebenfalls aktualisiert.

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

Das obige ist der detaillierte Inhalt vonAktualisiert MySQL nach der Aktualisierung eines Werts in einer bestimmten Ansicht denselben Wert in der Basistabelle und den zugehörigen Ansichten (falls vorhanden)?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen