程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> SQL Server 視圖創建點滴

SQL Server 視圖創建點滴

編輯:關於SqlServer

視圖在數據庫開發過程中是非常重要的,對提高查詢速度有很大的提高。因此我們的學會創建視圖,並且有效的使用視圖。
(1)表准的SQL視圖
        標准視圖比較簡單,大家也都在使用,在此就不壘述了。
(2)使用動態視圖
        標准視圖有一個嚴重的局限性,那就是標准視圖不支持參數。俗話說“法網恢恢,疏而不漏”,呵呵,我們也可以變通的使用帶參數的視圖。實現方法是我們把一個用戶定義的表值函數當作支持參數的動態視圖使用:
        CREATE FUNCTION fnTestVIEw (@m_id int)
        RETURNS TABLE
        AS
        RETURN  (select * from 視圖名稱 where 條件=@m_id)
這樣可以在Select語句的From子句中引用他們,用法:
        Select * from fnTestVIEw(2)

(3)使用索引視圖
        我們在使用視圖的時候有時想怎麼能給視圖加索引呢,其實,視圖和普通的表一樣可以添加索引,當SQL Server必須聯合很多表時,這項技術可以大大提高Select語句的性能。
        當在視圖上創建一個唯一聚集索引(unique clusterd index)時,SQL Server將物化這個視圖。看下面的例子:
        CREATE VIEW dbo.vtUsers
        WITH SCHEMABINDING 
        AS
        SELECT dbo.tUsers.userid, dbo.tUsers.username, dbo.tUsers.passWord, 
              dbo.tUsers.question, dbo.tUsers.answer, dbo.tUsers.email, dbo.tUsers.realname, 
              dbo.tUsers.sex, dbo.tUsers.birthday, dbo.tUsers.country, dbo.tUsers.city, 
              dbo.tUsers.address, dbo.tUsers.zip, dbo.tUsers.tele, dbo.tUsers.exdate, 
              dbo.tUsers.totalfund, dbo.tUsers.ordertotal, dbo.tUsers.jifen, dbo.tUsers.pid, 
              dbo.tUsers.agentid, dbo.tUsers.agentid2, dbo.tUsers.agentid3, dbo.tUsers.status, 
              dbo.tUsers.checkmod, dbo.tUsers.account, dbo.tUsers.bank, dbo.tUsers.logip,

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved