当前位置:asp编程网>技术教程>Asp教程>  正文

sql存储过程------用户登录系统

1970-01-01 08:00:00   来源:    作者:佚名   浏览量:3809   收藏
1、打开sql企业管理器,在里面建立数据库userinfo,完成后再在这个数据库中建立表user,再建立字段username、password,字段类型(varchar),最后给这个数据库加个用户user,设置好密码。向表中输入两条记录或更多,用来测试

2、打开userinfo  ------- 存储过程------右击-----新建存储过程(getUserlogin)-----删除文本框中的内容,贴粘上以下代码:
 CREATE PROCEDURE dbo.getUserlogin
       @UserName varchar(40),
       @UserPass varchar(40) output
    as
    set nocount on
    begin
       if @UserName is null return
       select @UserPass=password 
           from dbo.[user] 
           where username=@UserName
       return
    end
GO


3、conn.asp
<%
dim conn,connstr
set conn = server.createobject("adodb.connection")
connstr="Provider=SQLOLEDB.1;Persist Sercurity Info=True;User ID=user;pwd=123456;Initial Catalog=userinfo;Data Source=(local);"
conn.open connstr
set rs=server.CreateObject("adodb.recordset")
%>

4、用户登录窗口 index.htm
 <form name="form1" method="post" action="login.asp">
  <input type="text" name="username"><br>
  <input type="password" name="password"><br>
  <input type="submit" value=" 登 录 ">&#38;nbsp;<input type="reset" value="重置">
  </form>

5、login.asp
<!--#include file="conn.asp"-->
<%
username=request("username")
password=request("password")
'**调用带有输入输出参数的存储过程**
DIM MyComm,UserName
Set MyComm = Server.CreateObject("ADODB.Command")
MyComm.ActiveConnection = conn
MyComm.CommandText      = "getUserlogin"     '指定存储过程名
MyComm.CommandType      = 4                 '表明这是一个存储过程
MyComm.Prepared         = true              '要求将SQL命令先行编译
'声明参数
MyComm.Parameters.append MyComm.CreateParameter("@UserName",200,1,40,username)
MyComm.Parameters.append MyComm.CreateParameter("@UserPass",200,2,40)
MyComm.Execute
'取得出参
UserPass = MyComm(1)
If password=userpass Then
 response.write "登录成功"
Else
 response.write "登录失败"
End if
Set MyComm = Nothing
%>

6、IIS中运行index.htm,看看效果

原创文章,转载请注明来源,作者,谢谢



上一篇: 无

下一篇: sql存储过程----显示表中的记录

关于我们-广告合作-联系我们-积分规则-网站地图

Copyright(C)2013-2017版权所属asp编程网