儲存過程初探(原創)

2022-02-07 08:06:22 字數 1792 閱讀 5294

儲存過程其是就是放在伺服器上預先編譯好的sql語句。

儲存過程分兩類:系統儲存過程(以sp_開頭);使用者自定義儲存過程

一般來說使用儲存過程有以下優點:

一、減少網路資料傳遞流量提高t

-sql語句執行速度

使用者在使用到sql語句的時候,如使用者進行資料查詢,資料插入的時候首先要把相關的sql語句傳送的sqlserver,在進行比較複雜的查詢等操作時候就要頻繁向伺服器傳送這樣的sql語句,浪費網路頻寬,效率低下而且加重伺服器的負擔。而儲存過程經過編譯存放在服務上,使用儲存過程要比單條sql語句快的多。

二、適合模組化程式設計,提高系統的通用性

儲存過程在被建立以後,可以在程式中被多次呼叫而不用重複編寫sql語句。

三、可以更有效的管理使用者運算元據庫的許可權

通過sqlserver分配許可權更安全

儲存過程的建立和使用

建立儲存過程的基本語法:

create

procedure

pro_name

@param1

type1,

@param2

type2

assql語句

建立乙個沒有引數的查詢語句

create

pro 

user

asselect

user

,pass 

from

users

建立乙個帶輸入引數的語句

craate pro 

user

@user

nvarchar(50

)asselect

user

,pass 

from

users 

where

user

=@user

建立乙個帶出入,輸出引數

create

pro 

user

@user

nvarchar(50

),@count_user

intoutput

asselect

user

,pass 

from

users 

where

user

=@user

select

@user_count

=count

(user

) from

users 

where

user

=@user

儲存過程的呼叫:

//輸入引數並付值

mycommand.commandtype

=commandtype.storedprocedure;

mycommand.parameter.

add("

@user

",sqldbtype.

nvarchar,50

);mycommand.parameter.

=輸入的值;

mycommand.parameter.direction

=parameterdirection.input; 

//輸出引數並付值

mycommand.commandtype

=commandtype.stroedprocedure;

mycommand.

add("

@user

,sqldbtype.

int);

mycommand.parameter.direction

=parameterdirection.output;

sqlserver 儲存過程初探

儲存過程的優點 1.儲存過程只在創造時進行編譯,以後每次執行儲存過程都不需再重新編譯,而一般sql語句每執行一次就編譯一次,所以使用儲存過程可提高資料庫執行速度。2.當對資料庫進行複雜操作時 如對多個表進行update,insert,query,delete時 可將此複雜操作用儲存過程封裝起來與資料...

原創 Flex特效初探

乙個擴充套件後的linkbutton 當滑鼠移動到linkbutton上的時候,在linkbutton上會出現乙個向上移動的label,並且會有乙個振動的效果,當滑鼠移走的時候,label消失,如圖所示。如何實現這個效果呢,下面是原始碼 xml version 1.0 encoding utf 8 ...

儲存過程分頁,按多條件排序 原創

cs頁面呼叫 public int totalpage 0 public int pagecurrent 1 public int pagesize 25 public int rowscount 0 string userid,username public datatable dt new da...