Chương 7
View và Con trỏ
Database Design and Implementation with SQL Server 2000 / Session 7 / 2 of 25
Review
Chỉ mục và chỉ mục toàn văn
Đánh chỉ mục giúp việc nhận dữ liệu về nhanh hơn.
Lệnh CREATE INDEX được sử dụng để đánh chỉ mục trên
bảng chỉ định.
FILLFACTOR chỉ ra một giá trị từ 0 đến 100 nhằm xác định
phần trăm của trang chỉ mục được để trống.
Có hai kiểu chỉ mục clustered và non-clustered.
Một chỉ mục clustered xác định thứ tự lưu trữ của dữ liệu
trong một bảng. Một bảng chỉ có thể có một chỉ mục
clustered vì chỉ mục clustered quy định thứ tự lưu trữ vật lý
của dữ liệu.
Database Design and Implementation with SQL Server 2000 / Session 7 / 3 of 25
Review
Một chỉ mục non-clustered xác định thứ tự lưu trữ logic của
một bảng. Vì thế, một bảng có thể có nhiều chỉ mục non-
clustered (lên tới 249).
Các chỉ mục Clustered và non-clustered có thể được tạo với
các đặc tính duy nhất hoặc phức hợp.
Các chỉ mục duy nhất không cho phép trùng giá trị trong
cột chỉ mục.
Các chỉ mục phức hợp cho phép hai hoặc nhiều cột được
sử dụng để tạo chỉ mục.
Thủ tục lưu hệ thống sp_helpindex system báo cáo thông
tin về các chỉ mục trên một bảng.
Database Design and Implementation with SQL Server 2000 / Session 7 / 4 of 25
Review
Các chỉ dẫn bắt buộc trình tối ưu hoá truy vấn chọn một chỉ mục
riêng biệt để thực hiện truy vấn.
Lệnh DROP INDEX xoá một chỉ mục.
Một chỉ mục toàn văn theo sát các từ có ý nghĩa trong một bảng.
Chỉ mục này sử dụng cho việc tìm kiếm có chứa các từ chỉ mục
và các tìm kiếm nâng cao, chẳng hạn như tìm kiếm các cụm từ.
Một danh mục toàn văn là một thư mục mà tất cả các chỉ
mục toàn văn của cho một cơ sở dữ liệu được đặt ở đó.
Database Design and Implementation with SQL Server 2000 / Session 7 / 5 of 25
Review
Từ khoá CONTAINS tìm kiếm các cột chứa các kiểu dữ liệu kí
tự phù hợp với các từ đơn và các cụm từ, các từ gần giống một từ
khác, và các đối sánh quan trọng.
Từ khoá FREETEXT tìm kiếm các cột có chứa giá trị đồng
nghĩa hoặc gần nghĩa với các từ được cung cấp trong điều
kiện tìm kiếm
Database Design and Implementation with SQL Server 2000 / Session 7 / 6 of 25
Mục đích
Định nghĩa view
Hiểu được các ưu điểm của View
Tạo View
Sửa đổi View
Xoá view
Định nghĩa con trỏ và quá trình tạo con trỏ
Hiểu rõ View chỉ mục và View phân tán
Nắm vững quá trình thực thi con trỏ
Nhận về dữ liệu từ con trỏ theo hàng
Database Design and Implementation with SQL Server 2000 / Session 7 / 7 of 25
View
View là một cách thức để xem các dữ liệu từ một hay nhiều bảng
trong cơ sở dữ liệu.
View là một bảng ảo, bảng ảo được tạo ra như một tập con của
các cột hay các hàng từ một hay nhiều bảng khác nhau.
Một view không tồn tại như một tập hợp của các giá trị dữ liệu
lưu trữ trong cơ sở dữ liệu.
Một view có tác dụng như một bộ lọc dữ liệu trên các bảng
có địa chỉ trong các truy vấn
Database Design and Implementation with SQL Server 2000 / Session 7 / 8 of 25
Sử dụng view
Lọc các dòng từ bảng
Bảo vệ dữ liệu nhạy cảm khỏi những người dùng không được
phép
Làm giảm sự phức tạp của cơ sở dữ liệu
Tách các cơ sở dữ liệu khác nhau ở dạng vật lý vào một cơ
sở dữ liệu đơn nhất ở dạng logic.
Database Design and Implementation with SQL Server 2000 / Session 7 / 9 of 25
Ưu điểm của view
Thuận lợi đối với người sử dụng cuối
Dễ dàng để hiểu được kết quả
Dễ dàng thu được dữ liệu mong muốn
Thuận lợi của View đối với những nhà phát triển
Dễ dàng hạn chế việc nhận dữ liệu trả về
Dễ dàng bảo trì ứng dụng
Database Design and Implementation with SQL Server 2000 / Session 7 / 10 of 25
Tạo View
Lệnh CREATE VIEW được sử dụng để tạo view. Cú pháp là:
CREATE VIEW <Viewname> AS <Select Statement>
Ví dụ:
CREATE VIEW NewMoon_employee AS
SELECT emp_id, fname, minit, lname,hire_date
FROM employee e, publishers p
WHERE e.pub_id = p.pub_id
AND pub_name = 'New Moon Books'