Bài giảng SQL Server 2005 - Chương VI: View - Bảng ảo - Phạm Mạnh Cương

I- Khái niệm :

View là đối tượng dùng lưu trữ một phát biểu Select.

• View được xem như là một Table có cấu trúc và dữ liệu trả

về bởi phát biểu Select

Do đó View được dùng trong:

• Mệnh đề FROM của phát biểu Select khác

• Các phát biểu Insert, Update, Delete để cập nhật dữ liệu

trên Table nguồn của View.

 

ppt 11 trang yennguyen 1500
Bạn đang xem tài liệu "Bài giảng SQL Server 2005 - Chương VI: View - Bảng ảo - Phạm Mạnh Cương", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Bài giảng SQL Server 2005 - Chương VI: View - Bảng ảo - Phạm Mạnh Cương

Bài giảng SQL Server 2005 - Chương VI: View - Bảng ảo - Phạm Mạnh Cương
CHƯƠNG VI 
VIEW – BẢNG ẢO 
Giảng viên : Phạm Mạnh Cương 
1 
I- Khái niệm : 
2 
• View là đối tượng dùng lưu trữ một phát biểu Select . 
• View được xem như là một Table có cấu trúc và dữ liệu trả 
về bởi phát biểu Select 
Do đó View được dùng trong : 
• Mệnh đề FROM của phát biểu Select khác 
• Các phát biểu Insert, Update, Delete để cập nhật dữ liệu 
trên Table nguồn của View. 
II- Tạo VIEW 
3 
1. Bằng Lệnh CREATE VIEW 
2. Bằng công cụ quản lý Management 
1- Bằng Lệnh CREATE VIEW: 
4 
Cú pháp : CREATE VIEW view_name [ () ] 
[WITH ENCRYPTION] 
AS 
[WITH CHECK OPTION] 
Ví dụ : 
1. Tạo view liệt kê các mặt hàng đ ã ghi trên hóa đơn số 10248 gồm m ã số, tên , tiền bán các mặt hàng đó. 
2. Tạo View liệt kê danh sách hóa đơn đã ghi trong ngày với cấu trúc : SoHD , NgayHD , TienHD từ table HoaDon và CTHD 
5 
Thay đổi dữ liệu trên Table nguồn của View 
6 
CREATE VIEW vwCTHD ( SoHD , MaMH , SoLuong ) 
AS 
SELECT SoHD , MaMH , SL 
FROM CTHD Where SoHD = 10248 
Go 
INSERT vwCTHD(SoHD , MaMH , SoLuong ) VALUES(10248,1,20) 
INSERT vwCTHD(SoHD , MaMH , SoLuong ) VALUES(10249,1,20) 
UPDATE vwCTHD SET SoLuong = SoLuong + 10 
WHERE SoHD = 10249 
DELETE vwCTHD WHERE SoHD = 10249 
Hạn chế của View trong phát biểu cập nhật : 
7 
• Không thể sử dụng View để cập nhật dữ liệu trên table , nếu mệnh đề Select có chứa hàm tổng hợp , chứa cột tính toán hoặc có chứa từ khóa 
TOP, Group By, hoặc Distinct . 
• Phát biểu DELETE chỉ sử dụng trên View có 1 table nguồn . 
• Phát biểu INSERT hay UPDATE chỉ thay đổi dữ liệu trên 1 Table của mệnh đề From . 
CREATE VIEW vwCTHD1 
AS Select SoHD , CTHD.MaMH , TenMH , SL, DGBan 
From MatHang Inner Join CTHD On MatHang.MaMH = CTHD.MaMH 
Go 
Insert vwCTHD1(SoHD, MaMH , SL) Values(10248,1,20) 
Insert vwCTHD1(SoHD, MaMH , SL) Values(10249,1,20) 
WITH CHECK OPTION Ràng buộc dữ liệu cập nhật theo điều kiện Where 
8 
CREATE VIEW vwCTHD2 ( SoHD , MaMH , SoLuong ) 
AS 
SELECT SoHD , MaMH , SL FROM CTHD WHERE SoHD = 10248 
WITH CHECK OPTION 
Go 
UPDATE vwCTHD2 SET SoLuong = SoLuong + 10 
INSERT vwCTHD2(SoHD,MaMH,SoLuong) VALUES(10248,1,20) 
INSERT vwCTHD2(SoHD,MaMH,SoLuong) VALUES(10249,1,20) 
Error : The attempted insert or update failed because the target view either 
specifies WITH CHECK OPTION or spans a view that specifies WITH 
CHECK OPTION and one or more rows resulting from the operation did not 
qualify under the CHECK OPTION constraint. 
2- Bằng công cụ Manage 
9 
• Click phải mục Views trên khung trái và chọn New View 
• Click nút Add Table để chọn bảng nguồn 
• Chọn Field và khai báo thuộc tính cho các Field 
• Click nút Execute SQL để thực hiện truy vấn 
• Click nút Save để lưu và đặt tên View 
Màn hình thiết kế 
10 
CẢM ƠN 
11 

File đính kèm:

  • pptbai_giang_sql_server_2005_chuong_vi_view_bang_ao_pham_manh_c.ppt