Tạo unique clustered index cho View trong Sql Server

Yêu cầu:

– Khi tạo các table dùng cho việc tạo view thì các option ANSI_NULLS phải được thiết lập là ON

– Khi tạo view thì các options ANSI_NULLS và QUOTED_IDENTIFIER phải được thiết lập là ON (Mặc định).

– Các view phải được tạo trực tiếp từ các table chứ không phải từ các view khác.

– Các bảng được tham chiếu phải cùng 1 db và cùng 1 owner

– View phải được tạo với SCHEMABINDING option

Tạo view và index cho view bằng dòng lệnh (T-SQL)

USE AdventureWorks;
GO
--Set the options to support indexed views.
SET NUMERIC_ROUNDABORT OFF;
SET ANSI_PADDING, ANSI_WARNINGS, CONCAT_NULL_YIELDS_NULL, ARITHABORT,
    QUOTED_IDENTIFIER, ANSI_NULLS ON;
GO
--Create view with schemabinding.
IF OBJECT_ID ('Sales.vOrders', 'view') IS NOT NULL
DROP VIEW Sales.vOrders ;
GO
CREATE VIEW Sales.vOrders
WITH SCHEMABINDING
AS
    SELECT SUM(UnitPrice*OrderQty*(1.00-UnitPriceDiscount)) AS Revenue,
        OrderDate, ProductID, COUNT_BIG(*) AS COUNT
    FROM Sales.SalesOrderDetail AS od, Sales.SalesOrderHeader AS o
    WHERE od.SalesOrderID = o.SalesOrderID
    GROUP BY OrderDate, ProductID;
GO
--Create an index on the view.
CREATE UNIQUE CLUSTERED INDEX IDX_V1 
    ON Sales.vOrders (OrderDate, ProductID);
GO

Tạo View và Index cho view bằng Wizard

Bước 1: Tạo view

Trong Object Explorer, nhấn chuột phải vào mục view chọn New View

Bước 2: Chọn các bảng tham chiếu

Giữ Ctrl và click vào các bảng muốn tham chiếu rồi nhấn nút Add

Bước 3: Chọn các trường giữ liệu:

Bước 5: Thiết lập thuộc tính cho view:

Nhấn chuột trái vào vùng trống trong khung View Design

Mở cửa cửa sổ Properties

Thiết lập thuộc tính Bind To Schema = Yes

Bước 6: Lưu lại

Nhấn nút Save

Đặt tên cho view

Bước 7: Tạo unique clustered index

Trong Object Explorer, nhấn chuột phải vào mục Indexes chọn New Index

Bước 8: Thiết lập các thuộc tính để tạo unique clustered index

– chọn mục General

– Đặt tên

– Chọn Index Type là Clustered

– Check vào ô Unique

– Nhấn nút Add và chọn các trường dữ liệu muốn index

Bước 9: Lưu lại

– Nhấn nút  OK

Gửi phản hồi

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Log Out / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Log Out / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Log Out / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Log Out / Thay đổi )

Connecting to %s