一、SQL Server視圖創建相關概述
SQL Server視圖是一種虛擬表,它是從一個或多個表(或其他視圖)中導出的一組命名列。它們通過一個名字來引用。它們在數據庫中實際上並不存在,但是它們看起來與真正的表非常相似。當執行查詢時,視圖中的 SQL 語句會被用來檢索數據。
二、SQL Server視圖創建方法
1.如果不想把數據從源表中真正複製到一個新的表中
可以通過以下的步驟創建視圖:
CREATE VIEW [dbo].[vw_customers] AS SELECT [customerid] ,[companyname] ,[contactname] ,[contacttitle] ,[phone] FROM [dbo].[customers] GO
這個例子中,我們根據已經存在的表dbo.customers,創建了一個虛擬的表vw_customers。
2.SQL Server如何創建表
創建表的方法如下所示:
CREATE TABLE [dbo].[customers]( [customerid] [nchar](5) NOT NULL, [companyname] [nvarchar](40) NOT NULL, [contactname] [nvarchar](30) NULL, [contacttitle] [nvarchar](30) NULL, [address] [nvarchar](60) NULL, [city] [nvarchar](15) NULL, [region] [nvarchar](15) NULL, [postalcode] [nvarchar](10) NULL, [country] [nvarchar](15) NULL, [phone] [nvarchar](24) NULL, [fax] [nvarchar](24) NULL, CONSTRAINT [PK_customers] PRIMARY KEY CLUSTERED ( [customerid] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY]
3.SQL Server創建視圖
可以通過以下的步驟創建視圖:
CREATE VIEW [dbo].[vw_customers] AS SELECT [customerid] ,[companyname] ,[contactname] ,[contacttitle] ,[phone] FROM [dbo].[customers] GO
這個例子中,我們根據已經存在的表dbo.customers,創建了一個虛擬的表vw_customers。
4.SQL Server創建存儲過程
可以通過以下的步驟創建存儲過程:
CREATE PROCEDURE [dbo].[uspGetAllCategories] AS BEGIN SET NOCOUNT ON; SELECT * FROM Categories END
這個例子中,我們創建了一個存儲過程uspGetAllCategories,這個存儲過程返回了Categories表中的所有行。
三、SQL Server視圖創建的其他相關操作
1.SQL Server創建查詢
可以通過以下的步驟創建查詢:
SELECT [customerid] ,[companyname] ,[contactname] ,[contacttitle] ,[phone] FROM [dbo].[customers]
這個例子中,我們查詢了已經存在的表dbo.customers,返回查詢結果。
2.SQL Server創建索引
可以通過以下的步驟創建索引:
CREATE INDEX [IX_Customers_ContactName] ON [dbo].[Customers] ( [ContactName] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY] GO
這個例子中,我們創建了一個名為“IX_Customers_ContactName”的索引,索引的鍵是ContactName列。
3.SQL Server視圖權限
可以通過以下的步驟為SQL Server視圖設置權限:
GRANT SELECT ON [dbo].[vw_customers] TO [public]
這個例子中,我們為名為vw_customers的視圖設置了SELECT權限,允許公眾用戶查看數據。
4.SQL Server更新視圖選取
可以通過以下的步驟更新SQL Server視圖的選取:
ALTER VIEW [dbo].[vw_customers] AS SELECT [customerid] ,[companyname] ,[contactname] ,[contacttitle] ,[phone] ,[fax] FROM [dbo].[customers]
這個例子中,我們更新了vw_customers視圖的選取,添加了fax列。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/276181.html