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

原创 2007年09月18日 15:05:00

存儲過程:
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;
}

 

关于存数过程有output参数,SSM框架中获取返回参数的问题

存储过程 CREATE OR REPLACE PACKAGE ZJUFDC.PAC_FW_ZCZJ AS    procedure FW_ZCZJ(  SJ varchar2, --时间 ...
  • anqilt
  • anqilt
  • 2017年12月14日 14:59
  • 39

根据存储过程包含某个关键字,查找相关所有存储过程信息及根据多个主键删除重复列

--STUFF用法, ReportDetail 表存储的PersonelID为A,B,C,D 查询出来将对应A B C D 转换成人的姓名姓名1,姓名2,姓名3,姓名4 STUFF((SELECT ...
  • happy664618843
  • happy664618843
  • 2015年01月23日 11:54
  • 479

Oracle的存儲過程編程

--创建或者更新存储过程update_user_p create or replace procedure update_user_p(param1 in varchar2) is v_t...
  • u012975700
  • u012975700
  • 2016年04月19日 17:47
  • 135

输出斐波那契数列的前n项

菲波那契数列的格式如下: 1 1 2 3 5 8 13…… 满足: 1.前两项为 1 2.前两项的和等于第三项 ...
  • qq735598917
  • qq735598917
  • 2016年01月09日 20:00
  • 1503

oracle编写 函数和存储过程

转载自:  http://blog.csdn.net/lailai186/article/details/19115123 6.1 引言 6.2 创建函数 6.3 存储过程 6.3.1 创建过程 ...
  • Denghejing
  • Denghejing
  • 2016年09月28日 16:47
  • 1821

oracle-存储过程练习

--====================================存储过程=============================================== /* *scm_is...
  • y541397839
  • y541397839
  • 2014年11月13日 15:30
  • 977

剑指Offer--032-整数中1出现的次数(从1到n整数中1出现的次数)

链接 牛客OJ:从1到n整数中1出现的次数 九度OJ:http://ac.jobdu.com/problem.php?pid=1373 GitHub代码: 032-从1到n整数...
  • gatieme
  • gatieme
  • 2016年05月01日 23:36
  • 1414

簡單SQL存儲過程實例

实例1:只返回单一记录集的存储过程。 银行存款表(bankMoney)的内容如下 Id userID Sex Money 001...
  • msy123_ycj
  • msy123_ycj
  • 2015年01月26日 16:07
  • 239

SQL SERVER創建流水號的存儲過程

USE TEMP; GO /****** Object: StoredProcedure [dbo].[SP_GetSeqNo] Script Date: 2017/7/17 上午 09:28...
  • qq_22150821
  • qq_22150821
  • 2017年07月17日 10:33
  • 75

簡單SQL存儲過程實例

实例1:只返回单一记录集的存储过程。 银行存款表(bankMoney)的内容如下 Id userID Sex Money 001...
  • langal1212
  • langal1212
  • 2013年08月01日 17:04
  • 286
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:返回存儲過程的多個輸出字段
举报原因:
原因补充:

(最多只允许输入30个字)