dapper存储过程输出值
来源:互联网 发布:荒蛮故事 知乎 编辑:程序博客网 时间:2024/05/18 01:28
SQL代码:
USE [Book]
GO
/****** Object: StoredProcedure [dbo].[User_Maneger] Script Date: 10/26/2013 18:48:41 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
/*用户信息存储过程*/
ALTER PROCEDURE [dbo].[User_Maneger]
@MID varchar(10),--等同于用户名
@MName varchar(10)=null,--用户的名称
@MSex varchar(2)=null,
@Mpwd varchar(40),
@MAuth varchar(40),
@MTeleph varchar(15)=null,
@MAddre varchar(30)=null,
@cmd varchar(50),/*执行的增删改差的状态*/
@res int=0 output /*输出函数,初始化为0,表示执行失败*/
as
begin
--定义一个计数器
declare @count int
if @cmd='insert'--插入数据
begin
insert into Maneger
values(@MID , @MName ,@MSex ,@Mpwd ,@MAuth ,@MTeleph ,@MAddre);
set @res=1
end
if @cmd='update'--跟新数据
begin
update Maneger set MName=@MName,
MSex=@MSex,
Mpwd=@Mpwd,
MAuth=@MAuth,
MTeleph=@MTeleph,
MAddre=@MAddre
where Maneger.MID=@MID
set @res=1
end
if @cmd='delete'--删除数据
begin
delete from Maneger where MID=@MID
set @res=1
end
if @cmd='login'--用户登录
begin
set @count=(select COUNT(*) from Maneger where MID=@MID and Mpwd=@Mpwd)
if @count>0
set @res=1
set @res=0
end
if @cmd='check'--检测用户存在
begin
set @count=(select COUNT(MID) from Maneger where MID=@MID)
if @count>0
--用户存在
set @res=1
set @res=0
end
end
cs代码:
/// <summary>
/// 登录
/// </summary>
/// <param name="userName"></param>
/// <param name="passWd"></param>
/// <param name="role"></param>
/// <returns></returns>
public int getUser(string userName, string passWd, string role)
{
SqlConnection Cons = sqlHelper.getSqlCon();
var parems = new DynamicParameters();//建立一个parem对象
parems.Add("@MID", userName);
parems.Add("@Mpwd",Md5Helper.getEntryString(passWd));//密码md5加密
parems.Add("@MAuth", role);
parems.Add("@cmd", "login");
parems.Add("@res",0,DbType.Int32, ParameterDirection.Output);//输出返回值
//注意 parems.Add("@res",ParameterDirection.Output);//这样写返回值可能会出错,切记!!!
SqlMapper.Execute(Cons, "User_Maneger", parems, null, null, CommandType.StoredProcedure);
int res = parems.Get<int>("@res");//获取数据库输出的值
sqlHelper.closeSqlCon(Cons);
return res;
}
USE [Book]
GO
/****** Object: StoredProcedure [dbo].[User_Maneger] Script Date: 10/26/2013 18:48:41 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
/*用户信息存储过程*/
ALTER PROCEDURE [dbo].[User_Maneger]
@MID varchar(10),--等同于用户名
@MName varchar(10)=null,--用户的名称
@MSex varchar(2)=null,
@Mpwd varchar(40),
@MAuth varchar(40),
@MTeleph varchar(15)=null,
@MAddre varchar(30)=null,
@cmd varchar(50),/*执行的增删改差的状态*/
@res int=0 output /*输出函数,初始化为0,表示执行失败*/
as
begin
--定义一个计数器
declare @count int
if @cmd='insert'--插入数据
begin
insert into Maneger
values(@MID , @MName ,@MSex ,@Mpwd ,@MAuth ,@MTeleph ,@MAddre);
set @res=1
end
if @cmd='update'--跟新数据
begin
update Maneger set MName=@MName,
MSex=@MSex,
Mpwd=@Mpwd,
MAuth=@MAuth,
MTeleph=@MTeleph,
MAddre=@MAddre
where Maneger.MID=@MID
set @res=1
end
if @cmd='delete'--删除数据
begin
delete from Maneger where MID=@MID
set @res=1
end
if @cmd='login'--用户登录
begin
set @count=(select COUNT(*) from Maneger where MID=@MID and Mpwd=@Mpwd)
if @count>0
set @res=1
set @res=0
end
if @cmd='check'--检测用户存在
begin
set @count=(select COUNT(MID) from Maneger where MID=@MID)
if @count>0
--用户存在
set @res=1
set @res=0
end
end
cs代码:
/// <summary>
/// 登录
/// </summary>
/// <param name="userName"></param>
/// <param name="passWd"></param>
/// <param name="role"></param>
/// <returns></returns>
public int getUser(string userName, string passWd, string role)
{
SqlConnection Cons = sqlHelper.getSqlCon();
var parems = new DynamicParameters();//建立一个parem对象
parems.Add("@MID", userName);
parems.Add("@Mpwd",Md5Helper.getEntryString(passWd));//密码md5加密
parems.Add("@MAuth", role);
parems.Add("@cmd", "login");
parems.Add("@res",0,DbType.Int32, ParameterDirection.Output);//输出返回值
//注意 parems.Add("@res",ParameterDirection.Output);//这样写返回值可能会出错,切记!!!
SqlMapper.Execute(Cons, "User_Maneger", parems, null, null, CommandType.StoredProcedure);
int res = parems.Get<int>("@res");//获取数据库输出的值
sqlHelper.closeSqlCon(Cons);
return res;
}
0 0
- dapper存储过程输出值
- 存储过程--输出值,返回值
- 存储过程输出参数
- 存储过程-输出参数
- 存储过程输出输入
- Dapper完美兼容Oracle,执行存储过程,并返回结果集。
- 使用Dapper接收多个结果集,并实现存储过程分页
- 带输出参数存储过程
- oracle 存储过程的输出
- 存储过程输出调试信息
- SqlServer存储过程输出参数
- ORACLE存储过程输出游标
- 获取存储过程输出参数
- sqlserver存储过程输出参数
- 存储过程嵌套调用,获取上一层存储过程的输出值
- Sql Server 存储过程调用存储过程接收输出参数,返回值
- Sql Server 存储过程调用存储过程接收输出参数,返回值
- Sql Server 存储过程调用存储过程接收输出参数,返回值
- jQuery学习笔记(三)jQuery遍历
- 黑马程序员--面对对象之继承的定义和使用
- ctypes 载入 dll 产生的 WindowsError: [Error 126] 错误原因
- HTML5 APP开发环境的框架搭建
- 人生真正的快乐
- dapper存储过程输出值
- 表单文本框不可编辑,disabled与readonly区别
- 毕设手机站,全新亮相
- Maven实战(六)依赖
- 轻松搞定面试中的二叉树题目
- Nyoj-20 吝啬的国度
- jquery easy ui表单和分页设计
- hive_调优笔记一EXPLAIN解析
- Algorithm学习笔记 --- Fibonacci(递归求解)