USE [MEP]
GO
/****** Object: StoredProcedure [dbo].[loginCheck_Procedure] Script Date: 2019/3/15 9:10:20 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER procedure [dbo].[loginCheck_Procedure](
@name varchar(10),-- 輸入的名字,默认是输入参数
@pwd varchar(10) ,-- in 密碼
@isLogin varchar(10) output -- login state,输入输出参数
)
as
declare @updatePwdSQL varchar(100);
declare @pwdNum int=120;
--##### 登录检查
begin
-- 检查输入的用户名称是否为空
if (@name<>'')
begin
-- 检查登录用户
if(@name='admin' and @pwd ='1')
begin
set @isLogin='登录成功!' ;
print '登录成功!';
--执行sql的两种方式,进行其他的查询
select * from user_info where user_name=@name; -- 语句结束必须使用分号;where (@sd is null or date>@sd) and (@ed is null or date<@ed)
EXEC('select *from medi_classes');
begin
--获取密码长度
set @pwdNum= len(@pwd);
if(@pwdNum> 1)
begin
print 'num大于1,长度为:'+ convert(varchar,@pwdNum); --in转化varchar
-- return @pwdNum; --return 返回不执行储存过程
end
else if(@pwdNum= 1)
begin
print 'num等于1';
-- return '密码长度不够1';
-- return 1;
end
else
begin
-- return '输入的不是数字字符串!';
return 8888;
end
end
end
else
-- 把登录状态赋值给输出参数
set @isLogin='登录失败,密码不正确!' -- set赋值
print '登录密码错误!';
end
else
-- 輸出錯誤的login infom
begin
set @isLogin='登录失败,用户不存在!'
print '登录用户不存在!';
end
end
==========
调用
use MEP;
begin
-- 定义局部变量
-- declare @ids int;--
-- set @updatePwdSQL='update user_info set user_password= '+@pwd+''; --修改成默认的密码
-- exec( @updatePwdSQL);
-- exec('select user_name, user_password from user_info'); --查询用户信息
-- declare name varchar;
--declare pwd varchar;
declare @o varchar;
-- 存储过程名称+参数
exec loginCheck_Procedure 'admin', '1', o;
print o;
end