儲存過程的使用

2021-09-30 05:22:02 字數 1329 閱讀 2621

儲存過程**如下:

alter procedure dbo.testoutput  

( @p1  int  ,

@p2  int  output,

@p3  int

)   

as /* set nocount on */

select @p2 = count(*) from testproc where testid between @p1 and @p3

return @@rowcount

這個儲存過程返回2個值,乙個是output型引數@p2,另外乙個是資料庫自帶的return值 @@rowcount(語句所影響的行數)。

c#程式:

sqlcommand com =  new  sqlcommand( "testoutput" ,con);

com.commandtype = commandtype.storedprocedure;

sqlparameter p1 =  new  sqlparameter( "@p1" ,sqldbtype.int);

sqlparameter p2 =  new  sqlparameter( "@p2" ,sqldbtype.int);

sqlparameter p3 =  new  sqlparameter( "@p3" ,sqldbtype.int);

sqlparameter rowcount =  new  sqlparameter( "@@rowcount" , sqldbtype.int);   

p1.value =  int .parse(textbox2.text);

p2.direction = parameterdirection.output;  //把p2設定為output型引數

p3.value =  int .parse(textbox3.text);

rowcount.direction = parameterdirection.returnvalue; //把rowcount型別設定為returnvalue型

com.parameters.add(p1);

com.parameters.add(p2); 

com.parameters.add(p3);

com.parameters.add(rowcount);

com.executenonquery();

messagebox.show(p2.value.tostring());   //執行過儲存過程以後,output引數p2和@@rowcount就自動返回了值。

messagebox.show(rowcount.value.tostring());

儲存過程的使用

sqlparameter parameters parameters 0 value tblname parameters 1 value fldname dbhelpersql.runprocedure up tblname uid delete parameters out i public s...

儲存過程的使用

儲存過程 儲存過程 儲存過程就是提前已經編譯好的一段pl sql語言,放置在資料庫端 可以直接被呼叫。這一段pl sql一般都是固定步驟的業務。給指定員工漲100塊錢 create or replace procedure p1 eno emp.empno type isbegin update e...

儲存過程的使用

儲存過程是乙個預編譯的sql語句,優點是允許模組化的設計,就是說只需建立一次,以後在程式中就可以呼叫多次。可以用乙個 execute 儲存過程名 引數 命令來呼叫儲存過程。優勢 如果某次操作需要執行多次sql,使用儲存過程比單純sql語句執行要快。響應時間上來說有優勢,可以給我們帶來執行效率提高的好...