天天看點

機房收費系統—《視圖》

          視圖、存儲過程、觸發器等等早就聽說過,卻沒有真正接觸過,一直處在一個以後再說的狀态中,逃是逃不掉了。

          機房重構,重構出了什麼?留着這個疑問。重構完以後再做總結。

          視圖:在SQL中,外模式一級資料結構的基本機關是視圖,就是從若幹個基本表和(或)其他視圖構造出來的表。其實就是一張虛表。

         注意:在使用視圖的時候,應當提前設定好關聯表的主外鍵。

         在機房收費系統裡功能之一,學生檢視餘額時,用到了兩張表的内容,Card表裡的狀态和餘額,其他資訊都來自學生表。

視圖的建立和删除:

方法一:使用SQL語句建立視圖

建立:

'CREATE VIEW<視圖名>(<清單序列>)AS<SELECT查詢語句>
Create VIEW V_stuCard (CardNo,StudentNo,StudentName,Department,Grade,Class,Exlpain,Cstatuss,Cash)
as Select T_Student.StudentNo ,T_Student .StudentName ,T_Student .Department ,T_Student .Grade ,T_Student .Class ,T_Student .Explain ,T_card.CardNo ,T_card.Cash ,T_Card .CStatus 
From T_Student ,T_Card 
Where T_Student .CardNo =T_Card .CardNo 
           

删除:

'删除:DROP VIEW<視圖名>

DROP VIEW V_stuCard
           
機房收費系統—《視圖》

方法二:直接右鍵視圖,建立視圖,相對比較省事簡單。

1、建立視圖,右鍵視圖建立

機房收費系統—《視圖》

2、添加需要的表

機房收費系統—《視圖》

3、确定之後選擇字段,然後在勾選出每個表我們需要的字段就可以啦。

删除是也可以之間右擊删除,很友善。

    在D層編寫代碼,查詢語句和查詢表是一樣的,隻是把表名稱改為視圖名稱就可以了。如上:"Select * from V_stuCard where [email protected]"

   為什麼要使用視圖呢?視圖把我們需要的資料有機的結合到了一起,如果我們需要好幾個表裡的資料,還得查好幾個表,讓自己的代碼很沉重,使用視圖,不僅減少代碼,還可以讓我們隻寫一條查詢語句就OK啦。

   總結:個人認為,雖然方法二簡單,實作容易,但是還是建議使用SQL語句建立,應該多熟悉一下對SQL語句的使用。