[問題] 既然有資料表了 為何還要建檢視表 (View)

看板Database (資料庫)作者 (rrr0832)時間4年前 (2020/05/13 17:35), 編輯推噓4(407)
留言11則, 5人參與, 4年前最新討論串1/1
我最近在用MySQL建資料表 在網路上發現MySQL還有一個東西叫做「檢視表(View)」 可以把某一資料表的東西下Select指令弄成另一張新的表 只要該資料表的某資料改變,View所對應的該資料也會跟著變動 那麼我就好奇了 既然已經有建資料表了 那為什麼還要再多建一個「檢視表」這種東西? 檢視表的資料如有更動或刪除,對應的資料表也會跟著有所變更 那多建一個檢視表還有什麼意義呢? 反正撈資料、增資料、更新資料、刪除資料我在資料表就通通能做到了啊 難道新增一個檢視表就比較有效能還是比較安全嗎? 問一下各位囉 感謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 163.13.129.113 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1589362504.A.FAE.html

05/13 21:09, 4年前 , 1F
權限,用途不同吧
05/13 21:09, 1F

05/13 22:53, 4年前 , 2F
View 你可以當作是虛擬的,當執行查詢時幫你執行view 的
05/13 22:53, 2F

05/13 22:53, 4年前 , 3F
定義(簡化指令);或者你要把它拿來包住 Table 做保護..
05/13 22:53, 3F

05/14 01:49, 4年前 , 4F
舉例 若有好幾十支程式都用到這個資料
05/14 01:49, 4F

05/14 01:49, 4年前 , 5F
多包一層view可以減少麻煩 如果要改邏輯只要改view就好
05/14 01:49, 5F

05/14 01:50, 4年前 , 6F
不需要幾十個地方都一起改
05/14 01:50, 6F

05/19 12:22, 4年前 , 7F
減化程式碼
05/19 12:22, 7F

05/20 06:38, 4年前 , 8F
你應該沒實務經驗? 不然不會問這個
05/20 06:38, 8F

05/20 06:38, 4年前 , 9F
我有好幾張 table 要一起做運算,寫出來的 T-SQL 落落長
05/20 06:38, 9F

05/20 06:39, 4年前 , 10F
然後這個 T-SQL 會用在好幾個地方,這樣如果之後要改的話
05/20 06:39, 10F

05/20 06:39, 4年前 , 11F
還要去找哪些地方要改,此時 View 就相當好用了
05/20 06:39, 11F
文章代碼(AID): #1Ukxz8-k (Database)
文章代碼(AID): #1Ukxz8-k (Database)