create
proc
p_test
@name
varchar(20
),@rowcount
intoutput
asbegin
select
*from
t_customer
where
name
=@name
set@rowcount
=@@rowcount
endgo
儲存過程呼叫如下:
declare
@iint
exec
p_test'a
',@ioutput
select
@i--
結果/**//*
nameaddresstel
----------------------------------------
aaddresstelphone
(所影響的行數為1行)
-----------
1(所影響的行數為1行)*/
c#**:(用到兩個測試控制項,datagrid1(用於顯示繫結結果集合),lable(用於顯示儲存過程返回單值)
//新增資料庫引用
using
system.data.sqlclient;
//......
stringdbconnstr;
datasetmydataset
=new
dataset();
system.data.sqlclient.sqldataadapterdataadapter
=new
system.data.sqlclient.sqldataadapter();
dbconnstr="
connectstring"];
system.data.sqlclient.sqlconnectionmyconnection
=new
system.data.sqlclient.sqlconnection(dbconnstr);
if(myconnection.state
!=connectionstate.open)
system.data.sqlclient.sqlcommandmycommand
=new
system.data.sqlclient.sqlcommand(
"p_test
",myconnection);
mycommand.commandtype
=commandtype.storedprocedure;
//新增輸入查詢引數、賦予值
mycommand.parameters.add(
"@name
",sqldbtype.varchar);
mycommand.parameters[
"@name
"].value="
a";//
新增輸出引數
mycommand.parameters.add(
"@rowcount
",sqldbtype.int);
mycommand.parameters[
"@rowcount
"].direction
=parameterdirection.output;
mycommand.executenonquery();
dataadapter.selectcommand
=mycommand;
if(mydataset
!=null
)datagrid1.datasource
=mydataset;
datagrid1.databind();
//得到儲存過程輸出引數
label1.text
=mycommand.parameters[
"@rowcount
"].value.tostring();
if(myconnection.state
==connectionstate.open)
執行以上**即可(返回記錄集合和儲存過程返回值)
c 呼叫儲存過程例子
c 呼叫儲存過程例子 commandptr m cmdptr m cmdptr.createinstance uuidof command parameterptr inparam2 null parameterptr inparam3 null parameterptr inparam4 null...
oracle儲存過程簡單例子
先建立一張表 create table mytest name varchar2 30 passwd varchar2 30 建立儲存過程 create or replace procedure sp pro1 is begin insert into mytest values jack 123 ...
sql儲存過程簡單例子
例1 create proc proc stu sname varchar 20 pwd varchar 20 asselect from ren where sname sname and pwd pwd go檢視結果 proc stu admin admin 例2 下面的儲存過程實現使用者驗證的...