全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2543
推到 Plurk!
推到 Facebook!

View的觀念

答題得分者是:darnell
junlin
初階會員


發表:66
回覆:94
積分:42
註冊:2002-03-13

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-12-18 15:55:02 IP:61.220.xxx.xxx 訂閱
一直以來都是以為View在DB內不過是一段SQL語法(就像Stored procrdure一樣), 
當有人去Select時, 才會去執行View內的SQL, 然後回傳資料,
看了這篇http://delphi.ktop.com.tw/board.php?cid=18&fid=1494&tid=96454
感覺自己的觀念好像有點錯誤,
我想請問一下, View在DB內並沒有實際存放資料,
為什麼建了View會導致Table在insert, update, delete時會變慢呢??
darnell
版主


發表:25
回覆:103
積分:145
註冊:2003-03-04

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-12-18 16:47:54 IP:60.250.xxx.xxx 訂閱
===================引 用 junlin 文 章===================
一直以來都是以為View在DB內不過是一段SQL語法(就像Stored procrdure一樣),
當有人去Select時, 才會去執行View內的SQL, 然後回傳資料,
看了這篇http://delphi.ktop.com.tw/board.php?cid=18&fid=1494&tid=96454
感覺自己的觀念好像有點錯誤,
我想請問一下, View在DB內並沒有實際存放資料,
為什麼建了View會導致Table在insert, update, delete時會變慢呢??

很抱歉可能我沒有描述的很好讓你誤解,你的觀念是對的
我所謂的變慢是指使用View的時候,原始的Table經過異動後在使用時必須重新抓取資料所以會吃資源若無異動時就不需要
因此建View不會影響原始Table本身,而是Table的異動程度會影響View
索引的建置才會影響Table本身的速度,如果造成誤解跟你說抱歉~

補充一下:一般View對原始Table異動沒有影響,但是對於indexed View因為含有index的性質所以可能就有影響了
編輯記錄
darnell 重新編輯於 2008-12-18 16:48:17, 註解 無‧
darnell 重新編輯於 2008-12-18 17:55:59, 註解 無‧
junlin
初階會員


發表:66
回覆:94
積分:42
註冊:2002-03-13

發送簡訊給我
#3 引用回覆 回覆 發表時間:2008-12-19 08:52:30 IP:61.220.xxx.xxx 訂閱
原來view還有indexd view啊
謝謝你詳盡的解說
darnell
版主


發表:25
回覆:103
積分:145
註冊:2003-03-04

發送簡訊給我
#4 引用回覆 回覆 發表時間:2008-12-19 10:22:03 IP:60.250.xxx.xxx 訂閱
可能我沒解說的很清楚,所以造成誤會,
我已將詳細的說明補充到delphi.ktop.com.tw/board.php
希望可以讓大家有比較正確的觀念
如果有任何疑問還是可以大家提出來討論討論~

===================引 用 junlin 文 章===================
原來view還有indexd view啊
謝謝你詳盡的解說
系統時間:2024-05-06 9:11:54
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!