Ⅰ 視圖和存儲過程各自的好處
這需要根據具體的情況而定啊,如果僅僅是查詢,視圖和存儲過程都是只有在執行的時候才會跟資料庫進行交互並返回結果。如果是比較復雜的查詢,比如需要保存有中間結果才能進行下一步,那麼當然是使用存儲過程比較好,這樣你可以把一些中間處理的數據放到臨時表中,然後再整理返回,所有這些都是在伺服器的內存里完成,所以速度會比較快。
Ⅱ 存儲過程、索引、視圖、觸發器 的區別
存儲過程 一些sql的集合,執行速度快,執行後會存儲在資料庫中,方便以後調用
索引 加快查詢速度,不過,但索引的創建有一定的限速,超過了就會減慢降低效率
視圖 視圖有點像快照,可以用來查看復雜的結構,它是一張虛表,只能用於做查詢用
觸發器 用於保證主、外鍵的安全性,是隱式調用的,主要是行級觸發,語句觸發和替代觸發器
Ⅲ 什麼叫基本表什麼是視圖二者的區別和聯系是什麼
基本表是資料庫中用來存儲數據的對象,是有結構的數據的集合,是整個資料庫系統的基礎。數據在表中式按行和列的格式組織排列的。
視圖是計算機資料庫中的一個虛擬表,其內容由查詢定義。同真實的表一樣,視圖包含一系列帶有名稱的列和行數據。但是,視圖並不在資料庫中以存儲的數據值集形式存在。
基本表、視圖區別為:存在不同、存儲內容不同、操作不同。視圖是由一個或幾個基本表導出形成的虛表。
一、存在不同
1、基本表:基本表是本身獨立存在的表。
2、視圖:視圖本身不存在獨立存儲在資料庫中,是一個虛表。
二、存儲內容不同
1、基本表:基本表存儲的內容是實際的數據。
2、視圖:視圖存儲的內容只有存儲定義,不存放實際數據。
三、操作不同
1、基本表:操作者可以對基本表進行增刪改查四種操作。
2、視圖:操作者只可以對視圖進行查操作,不能進行增刪改操作。
參考資料來源:
網路——表
網路——視圖
Ⅳ sql中的視圖與存儲過程有什麼不同的
sql中視圖(view)和存儲過程(procere)的區別:
View本身就是顯示一個表格,View可以顯示出表格,但是VIEW本身並沒有包括任何數據,view也不接受參數,所以其實view就是一個虛擬的表格,而不是實際的,所以在需要參數的時候,需要提前在建立view的時候定義好。VIEW一般是給外部非專業IT人員使用,因為你可以隨意修改名稱並限定輸出的內容。
Procere就像是執行子查詢表格,接受參數,你可以用where或者order
by這樣的參數經行進一步的定義
Procere被定義出來之後,非常的方便,下次如果需要調用相同的命令,就直接把procere名字打上去就能顯示結果,通常為內部人員使用。
Ⅳ sql server中的視圖有什麼用和存儲過程有什麼區別他的好處是什麼
視圖通常用於封裝一個邏輯表
比如:
學生表我只想查看姓名,那麼就可以通過視圖將他封裝成一個只查看姓名的邏輯表,以後直接調用這個表就能查看學生的姓名
存儲過程就好比編程語言裡面的函數、方法,通常對某一功能的封裝,方便重復調用:
比如:
我要查看學生的總分,那麼就可以把他寫成一個存儲過程,以後直接調用,不必重復編寫這段Sql語句
Ⅵ 表和視圖的區別,存儲過程和函數的區別
問題1:
表是真實存在, 它占存儲空間
視圖相當於一個查詢語句它不佔有存儲空間
一個淺顯的比喻吧:表是可執行文件,視圖是快捷方式
表是真正的存在與資料庫中(也就是硬體介質上)的數據組合,而視圖只是簡單的把一個或多個表或其他視圖聯系在一起的集合,也就是說視圖只是固定了你的數據查詢方式,但是並沒有真正把數據保存起來,每次訪問視圖的時候,系統會自動根據視圖的規則去組織篩選數據
問題2:
本質上沒區別。
只是函數:只能返回一個變數的限制。而存儲過程可以返回多個。
函數是可以嵌入在sql中使用的,可以在select中調用,而存儲過程不行。
執行的本質都一樣。
函數限制比較多,比如不能用臨時表,只能用表變數.還有一些函數都不可用等等.而存儲過程的限制相對就比較少
1. 一般來說,存儲過程實現的功能要復雜一點,而函數的實現的功能針對性比較強。
2. 對於存儲過程來說可以返回參數,而函數只能返回值或者表對象。
3. 存儲過程一般是作為一個獨立的部分來執行,而函數可以作為查詢語句的一個部分來調用,由於函數可以返回一個表對象,因此它可以在查詢語句中位於FROM關鍵字的後面。
4. 當存儲過程和函數被執行的時候,SQL Manager會到PRocere cache中去取相應的查詢語句,如果在procere cache里沒有相應的查詢語句,SQL Manager就會對存儲過程和函數進行編譯。
Ⅶ 關於對視圖和存儲過程的區別的理解
另外,還有一關鍵的是存儲過程和常用的查詢與提交、替換等操作相比,效率是更高的!
視圖在一定條件下也是可以進行更新、插入刪除等 操作的
其實,你可以理解成 表的嵌套
Ⅷ 存儲過程和視圖有什麼區別
兩者差得多了,視圖只是一個查詢結果集,存儲過程除了可以查詢操作以外,還可以執行增、刪、改等操作
Ⅸ 視圖和存儲過程有什麼區別,什麼時候用視圖和存儲過程
1、存儲過程是程序化的sql可以實現一般sql不能實現的功能。
如:先檢索一個表得到一些數據,經過一定的編輯後更新到另外一個表中、這就可以用不帶參數的存儲過程實現。
2、視圖是虛擬表,不存儲數據,存儲的是sql,檢索他的時候實際上是執行定義它的sql語句。
Ⅹ SAP中的表和結構和視圖有什麼區別
表:交易數據配置文件,都存在表中。視圖:在邏輯層面鏈接資料庫表,視圖本身不能存數據。結構:如同其他語言中的數據結構,定義框架。不能存儲數據!