小 牛

付出最大努力,追求最高成就,享受最佳生活,收获无悔人生!

返回存儲過程的多個輸出字段

存儲過程:
CREATE procedure User_Login
@user_id varchar(20),
@password varchar(50),
@Return_Status char(1) output,
@user_name varchar(20) output,
@dept varchar(20) output,
@duty varchar(20) output,@Evaluate varchar(1)='N' output
AS
declare @dept_id varchar(4)
declare @duty_id varchar(4)
select @dept=''
select @duty=''
select @user_name=''
select @return_status='0' --不知明錯誤

if exists(select user_id from user_list where user_id=@user_id)
begin
if exists(select user_id from user_list where user_id=@user_id and password=@password)
begin
select @user_name=user_name,@dept_id=dept_id,@duty_id=duty_id,@Evaluate=is_Evaluate from user_list where user_id=@user_id and password=@password
select @dept=sname from dept_list where dept_id=@dept_id
select @duty=sname from duty_list where duty_id=@duty_id
select
@return_status='3'--正確登錄
end
else
select @return_status='2'--密碼錯誤
end
else
select @return_status='1'--用戶名不存在
GO

方法:
public string[] user_login(string user_id,string password)
{ mabuchi.Class.SqlHelper sqlhelper = new SqlHelper();
string [] erp = new string [5]; //接收数组
SqlParameter [] paramlist = { sqlhelper.CreateInParam("@User_id",SqlDbType.VarChar,20,user_id),
sqlhelper.CreateInParam("@password",SqlDbType.VarChar,50,password),
sqlhelper.CreateOutParam("@Return_Status",SqlDbType.VarChar,1),
sqlhelper.CreateOutParam("@user_name",SqlDbType.VarChar,1),
sqlhelper.CreateOutParam("@dept",SqlDbType.VarChar,20),
sqlhelper.CreateOutParam("@duty",SqlDbType.VarChar,20),
sqlhelper.CreateOutParam("@Evaluate",SqlDbType.VarChar,1)
};
try
{
sqlhelper.RunProc("User_Login ",paramlist);
erp[0] = paramlist[0].Value.ToString();
...
erp[4] = parmlist[6].Value.ToString();
return erp;
}

 
阅读更多
个人分类: 数据库
想对作者说点什么? 我来说一句

使用存儲過程插入和返回數據

2007年02月23日 29KB 下载

oracle存儲過程性能測試

2010年10月29日 6KB 下载

最經典的存儲過程sqlserver

2008年05月28日 6KB 下载

EXCEL导出工具

2017年09月08日 950KB 下载

oralce 的一些存儲過程

2016年05月20日 137KB 下载

没有更多推荐了,返回首页

不良信息举报

返回存儲過程的多個輸出字段

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭