当我们可以更新MySQL表中的值时,如何更新MySQL视图中的任何值?

众所周知,借助UPDATE语句,我们可以更新MySQL表中的值,并且可以类似的方式来更新MySQL视图中的值。UPDATE语句的语法将相同,除了在表名的位置,我们必须提供视图的名称。我们从名为“ 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)

现在,假设如果我们要将Id的值从NULL更改为任何其他值,那么在以下查询的帮助下,我们可以更新view的值-

mysql> Update info set id = 130 where Name = 'Ram';

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)