在我的web应用程序中,我编写了一个查询来检查用户名和密码。如果用户标识失败,我编写查询,显示用户标识错误,如果密码错误,则显示密码错误。我写的查询只返回int,但我想返回表或数据行,你可以给我一个解决方案?sql查询,返回表或表行吗?
这是我的查询:
用户表包含用户名,EMAILID,移动,国家等,
create procedure [dbo].[sp_users_login] (
@username varchar(30),
@password varchar(30),
@ret int output)
as
if exists (select username from users where [email protected])
if exists (select [password], username
from users
where [password][email protected]
and [email protected])
set @ret =1
else
set @ret=2
else
set @ret=3
我的查询将仅返回一个int,但我需要用户的详细信息,以及。如:用户,emailid等我想要特定用户的全部详细信息 - 是否有可能在此查询中?
为什么你会返回无效的用户名/密码信息?提供的内容可以匹配大量记录,而不仅仅是一个。 – 2010-01-04 04:12:58
注意:出于显而易见的原因,提供有关它是否是失败的用户名或密码的信息是不安全的做法。 – 2010-01-04 04:20:43
我同意米奇,但他们可能不会将该信息提供给用户,而只是让应用程序考虑它。也许他想发送电子邮件来提醒用户有人试图以他们的身份登录。 – 2010-01-04 04:25:56