作者rrr0832 (rrr0832)
看板Database
標題[問題] 既然有資料表了 為何還要建檢視表 (View)
時間Wed May 13 17:35:02 2020
我最近在用MySQL建資料表
在網路上發現MySQL還有一個東西叫做「檢視表(View)」
可以把某一資料表的東西下Select指令弄成另一張新的表
只要該資料表的某資料改變,View所對應的該資料也會跟著變動
那麼我就好奇了
既然已經有建資料表了
那為什麼還要再多建一個「檢視表」這種東西?
檢視表的資料如有更動或刪除,對應的資料表也會跟著有所變更
那多建一個檢視表還有什麼意義呢?
反正撈資料、增資料、更新資料、刪除資料我在資料表就通通能做到了啊
難道新增一個檢視表就比較有效能還是比較安全嗎?
問一下各位囉
感謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 163.13.129.113 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Database/M.1589362504.A.FAE.html
1F:推 criky: 權限,用途不同吧 05/13 21:09
2F:推 YaMeiLo: View 你可以當作是虛擬的,當執行查詢時幫你執行view 的 05/13 22:53
3F:→ YaMeiLo: 定義(簡化指令);或者你要把它拿來包住 Table 做保護.. 05/13 22:53
4F:→ olycats: 舉例 若有好幾十支程式都用到這個資料 05/14 01:49
5F:→ olycats: 多包一層view可以減少麻煩 如果要改邏輯只要改view就好 05/14 01:49
6F:→ olycats: 不需要幾十個地方都一起改 05/14 01:50
7F:推 bij831: 減化程式碼 05/19 12:22
8F:推 mathrew: 你應該沒實務經驗? 不然不會問這個 05/20 06:38
9F:→ mathrew: 我有好幾張 table 要一起做運算,寫出來的 T-SQL 落落長 05/20 06:38
10F:→ mathrew: 然後這個 T-SQL 會用在好幾個地方,這樣如果之後要改的話 05/20 06:39
11F:→ mathrew: 還要去找哪些地方要改,此時 View 就相當好用了 05/20 06:39