sql中的檢視與儲存過程有什麼不同的

2021-09-28 18:15:30 字數 2273 閱讀 3358

1樓:千鋒教育

sql中檢視(view)和儲存過程(procedure)的區別:

view本身就是顯示一個**,view可以顯示出**,但是view本身並沒有包括任何資料,view也不接受引數,所以其實view就是一個虛擬的**,而不是實際的,所以在需要引數的時候,需要提前在建立view的時候定義好。view一般是給外部非專業it人員使用,因為你可以隨意修改名稱並限定輸出的內容。

procedure就像是執行子查詢**,接受引數,你可以用where或者order by這樣的引數經行進一步的定義

procedure被定義出來之後,非常的方便,下次如果需要呼叫相同的命令,就直接把procedure名字打上去就能顯示結果,通常為內部人員使用。

2樓:匿名使用者

檢視只是從一個或多個基本表虛擬出來的表,是提供給使用者看的,每次查詢都需要對其重新執行,而儲存過程可以是sql語句,只需要在第一次編譯時編寫,以後的過程中就不需要編寫了。。

3樓:匿名使用者

能夠進行修改,但僅限於單表檢視,多個表的檢視修改需要通過觸發器來完成

4樓:匿名使用者

檢視是基於基本表或者別的試圖的一個虛表,不儲存實際資料。

基於一個基本表的試圖是可以對其進行修改的,對檢視的修改等於說是對基本表的修改。

檢視的作用主要是保證資料的安全性

過程可以做一些很複雜的操作,這是檢視沒法比的

5樓:來元彤

試圖只是一個虛擬的表,只供檢視。

儲存 過程,可以對其進修增刪改查操作~!

sql server中的檢視有什麼用?和儲存過程有什麼區別?他的好處是什麼?

6樓:匿名使用者

檢視通常用於封裝一個邏輯表

比如:學生表我只想檢視姓名,那麼就可以通過檢視回將他封裝成一個只檢視姓答名的邏輯表,以後直接呼叫這個表就能檢視學生的姓名

儲存過程就好比程式語言裡面的函式、方法,通常對某一功能的封裝,方便重複呼叫:

比如:我要檢視學生的總分,那麼就可以把他寫成一個儲存過程,以後直接呼叫,不必重複編寫這段sql語句

7樓:匿名使用者

檢視是把現在有資料組合成新的形式展示出來,相當於一張虛擬的表,執行時用來呈現資料。

檢視和儲存過程的區別只能查。。。增刪改是不行的

好處是 不用儲存在資料庫裡。。

8樓:匿名使用者

檢視的本來質就是一條sql語句。

它的自主要作用是實現多表查詢。

儲存過程的主要作用是將外部資料按照一定的規則儲存帶資料庫中。

你也可以這樣理解:

檢視為了實現多表查詢,儲存過程為了按照一定的規則將資料儲存到資料庫中。

最好不要往檢視裡插入資料,很容易出錯。

sql中的儲存過程,函式,檢視有什麼區別?

9樓:

儲存過程是預先寫好並編譯好的sql程式

函式預先寫好的**片斷,有系統函式,也有自定義函式

檢視是預先建立的查詢語句,用起來就像使用表一樣了

10樓:

儲存過程需要單獨執行,函式可以隨處呼叫,檢視是一種直觀的表現方式~

11樓:駱木夕翠茵

這是基本概念

儲存過程和函式將多個sql

語句有序的結合在一起,完成某項功能

檢視是是個虛擬實體,不存放資料,但可以用來查詢

sql server2000中的「檢視」和「儲存過程」有什麼不同

12樓:佳樂比海

1.檢視是虛擬表,例如有一個員工表,有一個工資表,查詢工資時總是兩個表一起查詢,那麼就可以建一個員工工資檢視裡面來自員工表的員工編號和姓名又有來自工資表的員工工資。

2.儲存過程是一組為了完成特定功能的sql 語句集,經編譯後儲存在資料庫中。型別於函式,但函式有返回值。

3.儲存過程沒辦法編輯?你是指它裡面的資料不能改變嗎?兄弟,它本來裡面就沒有資料,只是給你呼叫的時候才用相應的根據引數返回不同的東西而已。

4.檢視不能寫修改語句(包括插入)。

5.另外,建議您在練習時可以用檢視,但開發專案時最好不用,因為其效能不佳。謝謝。

13樓:

你可以將檢視看成是儲存好的子查詢,而過程則是一段程式;對子查詢,有時候是可以更新的,但要好多條件的;對程式嗎,當然只能按寫好的邏輯工作了

sql儲存過程中如何使用declare有的儲存過程宣告瞭,有的沒有宣告。請回答的詳細點。。謝謝

如果你把儲存過程看作是批處理語句就好理解多了!儲存過程只不過是一個帶著名稱的sql批處理語句,如果在整個過程中需要變數時就是可以宣告,但該變數宣告後只能存活在批處理 儲存過程 的執行中,執行完畢後就會消失,這種宣告的格式就是 declare 變數名 型別 其中變數名為了與資料庫中的列名相互區別,所以...

sql儲存過程中如何插入使用臨時表

在儲存過程中 是不可以建立臨時表的.建議使用表變數代替臨時表進行操作 或者在儲存過程外面建好臨時表 祝你好運 可以使用如下方法 declare sql varchar 2000 begin set sql select into tmp from student print sql exec sql...

SQL儲存過程中,if判斷語句中有多個判斷條件時,要用括號括 嗎

如果像你這個只是單純的or的話,這兩種寫法應該都可以。可是如果是有and又有or,那麼就需要你先把這個條件的先後分清楚了,這樣的情況,肯定需要括號括清楚每一層。查詢語句的效果 with t tmp as select abcdefg 123456 xyz as f1 select f1,substr...