View trong SQL. Giới thiệu và các ví dụ về View trong SQL

View trong SQL

 

I.  Khái niệm View(Khung nhìn)

–   Một View(Khung nhìn) có thể được xem như là một bảng ảo trong CSDL có nội dung được định nghĩa thông qua một câu lệnh truy vấn(SELECT).

–   Như vậy, một View trông giống như một Table(bảng) với một tên khung nhìn và một tập các dòng, cột. Điểm khác biệt giữa View và Table là: View không được xem là một cấu trúc lưu trữ dữ liệu tồn tại trong CSDL.

–   Lợi ích của việc sử dụng View trong CSDL:

+  Bảo mật dữ liệu: Người sử dụng được cấp phát quyền trên các View với những phần dữ liệu mà người sử dụng được phép -> Hạn chế việc người sử dụng truy cập trực tiếp dữ liệu.

+  Đơn giản hóa các thao tác truy vấn dữ liệu: Một View đóng vai trò như một đối tượng tập hợp dữ liệu từ nhiều bảng khác nhau vào trong một bảng -> Người sử dụng có thể thực hiện các yêu cầu truy vấn dữ liệu một cách đơn giản từ View thay vì phải đưa ra những câu truy vấn phức tạp.

+  Tập trung và đơn giản hóa dữ liệu: Thông qua View ta có thể cung cấp cho người dùng những cấu trúc đơn giản, dễ hiểu về dữ liệu đồng thời giúp cho người dùng tập trung hơn trên những phần dữ liệu cần thiết.

+  Độc lập dữ liệu: Một View có thể cho phép người dùng có được cái nhìn về dữ liệu độc lập với cấu trúc của các bảng trong CSDL cho dù các bảng cơ sở có bị thay đổi phần nào về cấu trúc.

–   Một số nhược điểm của việc sử dụng View:

+  Do hệ quản trị CSDL thực hiện chuyển đổi các truy vấn trên View thành những truy vấn trên các bảng cơ sở nên nếu một View được định nghĩa bởi một truy vấn phức tạp thì sẽ dẫn đến chi phí về mặt thời gian khi thực hiện truy vấn liên quan đến View lớn.

+  Mặc dù thông qua View có thể thực hiện được các thao tác bổ sung và cập nhật dữ liệu cho bảng cơ sở nhưng chỉ hạn chế đối với những View đơn giản. Đối với các View phức tạp thì thường không thực hiện được, hay nói cách khác dữ liệu trong View chỉ là đọc.

 

 

II.  Cú pháp tạo khung nhìn

–   Để tạo View(Khung nhìn) ta sử dụng cú pháp:

 

Ví dụ: Tạo View có tên SalePerOrder (Sale cho mỗi đơn đặt hàng) truy vấn dữ liệu từ bảng orderdetails bằng câu lệnh SELECT:

 

 

Để truy vấn dữ liệu trong View vừa tạo, ta sử dụng câu lệnh SELECT:

 

 

 

III.  Cập nhật, bổ sung và xóa dữ liệu thông qua khung nhìn

–   Đối với một số View, ta có thể thực hiện các thao tác cập nhật, bổ sung và xóa dữ liệu. Thực chất, những thao tác này sẽ được chuyển thành những thao tác tương tự trên các bảng cơ sở và có tác động đến những bảng cơ sở.

–   Ví dụ minh họa cho ta thấy việc thực hiện các thao tác cập nhật, bổ sung và xóa dữ liệu thông qua View:

+  Xét hai bảng NHANVIEN và DONVI được định nghĩa như sau:

 

 

+  Câu lệnh dưới đây định nghĩa View NV1 cung cấp các thông tin về mã nhân viên, họ tên và mã đơn vị của nhân viên:

 

 

+  Để bổ sung một bản ghi mới vào bảng NHANVIEN ta thực hiện câu lệnh:

 

 

+  Thông qua View này ta cũng có thể thực hiện thao tác cập nhật và xóa dữ liệu:

 

 

 

IV.  Sửa đổi khung nhìn

–   Cú pháp sửa đổi khung nhìn:

 

 

Ví dụ:

 

 

 

V.  Xóa khung nhìn

–   Cú pháp xóa khung nhìn:

 

 

Ví dụ:

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">