存储过程判断用户登录信息

 

存储过程判断用户登录信息

2007-05-13 18:49

create proc checkadmin
(
@username varchar(50),
@userpwd varchar(50)

)
as
declare @flag int
declare @pass varchar(50)
select @pass=userpwd from admin_login where username=@username
if @@rowcount=0
set @flag=0
else
   if @pass=@userpwd
set @flag=1
   else
set @flag=2
go

SqlConnection myconn = db.openconn();
             try
             {
                 myconn.Open();
                 SqlCommand mycom = new SqlCommand("checkadmin", myconn);
                 mycom.CommandType = CommandType.StoredProcedure;
                 SqlParameter sp = new SqlParameter("@username", SqlDbType.VarChar);
                 sp.Value = username.Text;
                 mycom.Parameters.Add(sp);
                 sp = new SqlParameter("@userpwd", SqlDbType.VarChar);
                 sp.Value = userope.encrypt(userpwd.Text);
                 mycom.Parameters.Add(sp);
                 sp = new SqlParameter("@flag", SqlDbType.Int);
                 sp.Direction = ParameterDirection.Output;
                 mycom.Parameters.Add(sp);
                 mycom.ExecuteNonQuery();
                 if (mycom.Parameters["@flag"].Value.ToString() == "0")
                 {
                     userope.mess("
用户名不存在!", "admin_login.aspx");
                 }
                 else if (mycom.Parameters["@flag"].Value.ToString() == "1")
                 {
                     Response.Redirect("add_admin.aspx");
                 }
                 else
                 {
                     userope.mess("
密码有错!", "admin_login.aspx");
                 }
             }
             finally
             {

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MySQL用户登录存储过程是一段SQL代码的集合,用于验证用户提供的用户名和密码是否正确,并返回相应的结果。 在创建MySQL用户登录存储过程时,首先需要定义输入参数以接收用户提供的用户名和密码。然后,可以在存储过程中使用条件判断语句,比如使用IF函数,来检查用户名和密码是否匹配数据库中的记录。 下面是一个示例的MySQL用户登录存储过程代码: ```sql DELIMITER // CREATE PROCEDURE UserLogin(IN p_username VARCHAR(50), IN p_password VARCHAR(50), OUT result VARCHAR(20)) BEGIN DECLARE user_id INT; SELECT id INTO user_id FROM users WHERE username = p_username AND password = p_password; IF user_id IS NULL THEN SET result = 'Login failed'; ELSE SET result = 'Login successful'; END IF; END // DELIMITER ; ``` 在上述示例中,存储过程接受两个输入参数,即用户名和密码,以及一个输出参数,即返回结果。存储过程会在users表中查找匹配的记录,并将结果存储在user_id变量中。最后,根据user_id是否为NULL,决定返回的结果。 要调用这个存储过程,可以使用CALL语句,如下所示: ```sql CALL UserLogin('testuser', 'password', @result); SELECT @result; ``` 以上代码将会调用UserLogin存储过程,并将结果存储在变量@result中。最后,通过SELECT语句可以查看结果。 通过使用存储过程进行用户登录验证,可以将验证逻辑封装在数据库中,提高代码的可维护性和安全性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值