首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • 登陆的存储过程中的问题 [已结贴,结贴人:duanlongk]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-28 16:13:05 楼主
    不知道怎么回事,当用户登录时存储过程总是调用数据库表中的最后一行记录,也就是说,只有最后一条记录有效,前面的注册用户就没办法登陆,
    因为用户名总是停留在最后一行的那个用户名
    create procedure [dbo].[userlogin]
    @username nvarchar(20) output,
    @secretcode nvarchar(50) output,
    @authority char(3) output
    as select @username=dbo.user_table.usrrname,
              @secretcode=dbo.user_table.secret_code,
              @authority=dbo.user_table.authrity
    from dbo.user_table
    请大虾指点。最好有示例代码哦。
    20  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • wangkun9999
    • 等级:
    发表于:2008-04-28 16:28:081楼 得分:5
    SQL code
    create procedure [dbo].[userlogin] @username nvarchar(20) output, @secretcode nvarchar(50) output, @authority char(3) output as select @username=dbo.user_table.usrrname, @secretcode=dbo.user_table.secret_code, @authority=dbo.user_table.authrity from dbo.user_table where dbo.user_table.usrrname=@username
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-28 20:18:222楼 得分:0
    没有指定查询条件
    同意l楼
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-28 20:20:113楼 得分:0
    可这样还是不行啊,
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • Sandy945
    • 等级:
    发表于:2008-04-28 20:24:144楼 得分:0
    存储过程写的有问题,你参数设置成 output 类型干什么

    登陆存储过程的功能应该是 根据 用户名和密码 来 验证用户 是否存在
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • zengxie
    • 等级:
    发表于:2008-04-28 20:30:525楼 得分:0
    存储过程写的有问题,你参数设置成 output 类型干什么

    登陆存储过程的功能应该是 根据 用户名和密码 来 验证用户 是否存在
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • hecong875
    • 等级:
    发表于:2008-04-28 23:43:496楼 得分:15
    create procedure [dbo].[userlogin]
    @username nvarchar(20) output, //output干吗?
    @secretcode nvarchar(50) output,////output干吗?
    @authority char(3) output //output干吗?
    as select @username=dbo.user_table.usrrname,
              @secretcode=dbo.user_table.secret_code,
              @authority=dbo.user_table.authrity
    from dbo.user_table

    没有条件怎么查呢?  就是说你登陆的时候需要把 登陆人的用户名密码全部传如存储过程 当做条件来查询!


      一般做登陆的时候 做简单点! 
      用户明: DDD
      密码:  DDD(一般都是用MD5加密 在插入的时候也是要加密的)

    然后 把这两个条件当作参数穿入 查询返回行数就可以!

      在数据库层可以写  存储过程返回的值 如果== 0 那就返回 FALSE  代表用户不存在
                      存储过程返回的值 如果 != 0 那就返回 TRUE 代表用户存在
        这样做的前提是 你必须在插入用户的时候判断不能插入重复用户!
        基本登陆简单些的就这样做! 
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-29 09:56:247楼 得分:0
    mark
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved