Computer >> Máy Tính >  >> Lập trình >> MySQL

Sau khi cập nhật bất kỳ giá trị nào trong một dạng xem cụ thể, MySQL có cập nhật tương tự trong bảng cơ sở và các dạng xem liên quan của nó (nếu có) không?


Có, MySQL sẽ cập nhật giá trị, nếu nó được cập nhật trong một dạng xem, trong bảng cơ sở cũng như trong các dạng xem được liên kết với nó. Để minh họa điều đó, chúng tôi lấy ví dụ về bảng Student_info có dữ liệu sau -

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)

Sau đây là dạng xem "Thông tin" được tạo trên cơ sở của bảng "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)

Bây giờ trong truy vấn sau, chúng tôi sẽ cập nhật chế độ xem ‘Thông tin’ -

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)

Tập hợp kết quả trên cho thấy rằng ‘Thông tin’ đã được cập nhật.

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)

Tập hợp kết quả ở trên cho thấy rằng bảng cơ sở cũng được cập nhật khi và khi chúng tôi cập nhật chế độ xem có tên 'thông tin'

Dưới đây là chế độ xem có tên ‘info_less’ được tạo trên cơ sở chế độ xem ‘thông tin’ và chế độ xem này cũng được cập nhật khi chúng tôi cập nhật chế độ xem ‘thông tin’.

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