2011-09-16 43 views

Trả lời

11

Nó đơn giản hóa cuộc gọi và cung cấp một lớp hướng dẫn. Vì vậy, nếu bạn có một lựa chọn phức tạp với nhiều kết nối, bạn có thể thực hiện nó trong một khung nhìn và chỉ cần gọi khung nhìn mà không cần phải xem xét tất cả các phép nối này. Sau đó, bạn có thể sử dụng lại chế độ xem này.

Ngoài ra, nếu bạn sử dụng chế độ xem thay vì bảng theo cách này, trong tương lai nếu bạn cần di chuyển cột, bạn có thể dễ dàng thực hiện điều đó và chỉ yêu cầu thay đổi đối với chế độ xem.

2

Bên cạnh những lợi ích rõ ràng mà Oded đã đề cập, đôi khi bạn có thể cải thiện đáng kể tốc độ bằng cách sử dụng materialized views. Từ wikipedia:

Trong hệ thống quản lý cơ sở dữ liệu theo mô hình quan hệ, chế độ xem là bảng ảo đại diện cho kết quả của truy vấn cơ sở dữ liệu. Bất cứ khi nào một bảng xem thông thường được truy vấn hoặc cập nhật, DBMS chuyển đổi các truy vấn này thành các truy vấn hoặc cập nhật dựa trên các bảng cơ bản bên dưới. Một khung nhìn vật hoá có cách tiếp cận khác nhau trong đó kết quả truy vấn được lưu trữ dưới dạng bảng cụ thể có thể được cập nhật từ các bảng cơ sở ban đầu theo thời gian.

1

Có một số, nhưng tôi nghĩ rằng lợi ích chính là quan điểm là việc thực thi SQL độc lập dữ liệu lôgic.

Tạo chế độ xem có thể cập nhật và các ứng dụng sử dụng chế độ xem tương đối miễn dịch với những thay đổi trong bảng bên dưới. Thay đổi cấu trúc của các bảng bên dưới, cập nhật định nghĩa khung nhìn và tất cả các ứng dụng hoạt động như thể không có gì xảy ra. (Trên cơ sở dữ liệu di sản, có thể có hàng trăm ứng dụng viết bằng hàng chục ngôn ngữ. Đây là lớn chiến thắng.)

Các lợi ích khác (paraphrasing Chris ngày)

an ninh "tự động" cho dữ liệu ẩn. Hạn chế quyền truy cập vào các chế độ xem và bạn có quyền kiểm soát chi tiết những ai sẽ thấy những gì.

Khả năng "DRY" cho các ứng dụng. Một khung nhìn có thể cung cấp một giao diện công cộng đơn giản cho một câu lệnh SELECT phức tạp, vì vậy các ứng dụng có thể chỉ SELECT column-list FROM my-easy-view.

Những người dùng khác nhau có thể xem cùng một dữ liệu theo nhiều cách khác nhau.

Các vấn đề liên quan