有关存储过程的问题。。。

realxuj 2003-05-05 11:55:34
现有一表:tbluser
字段如下:


Firstname Lastname Address City Provice Zip Phone UserId
方 飞 宜景小区 海口 海南 210072 66235128 1
方 晶 枫叶小区 北京 北京 100852 65322198 2
刘 文奇 海鲜小区 牡丹江 黑龙江 320096 36544598 3


username pass
fangfei fangfei
fangjing fangjing
liuwenqi liuwenqi

有一存储过程:
CREATE procedure spValidateUser
@username varchar,
@password varchar
as
select userid from tblUser
where username=@username
and pass=@password
return
GO

然后我执行
spValidateUser fangfei,fangfei
go

返回的结果是空的,
应该是:
userid
1
才对。。。不知怎么回事,请指教。。。

...全文
41 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
realxuj 2003-05-06
  • 打赏
  • 举报
回复
都睡了吗?。。。
DragonBill 2003-05-06
  • 打赏
  • 举报
回复
看不出原因,这样写试试:

CREATE procedure spValidateUser
@username varchar(5) output,
@password varchar(16) output
as
select userid from tblUser
where username=@username
and pass=@password
return
GO

然后执行
declare @UsName varchar(5),
@Pwd varchar(16)
select @UsName='fangfei', @Pwd='fangfei'

spValidateUser @UsName,@Pwd
go
miller3000 2003-05-05
  • 打赏
  • 举报
回复
CREATE PROCEDURE spValidateUser
( @username varchar(10), @password varchar(10))
as
begin
select usersid from users where username=@username and pass=@password
end
GO
字段的大小一定要写,另外最好写上开始结束
tjan 2003-05-05
  • 打赏
  • 举报
回复
这样执行:

spValidateUser 'fangfei','fangfei'
go
caiyunxia 2003-05-05
  • 打赏
  • 举报
回复
CREATE procedure spValidateUser
@username varchar,
@password varchar
as
select userid from tblUser
where username=@username
and pass=@password
GO
realxuj 2003-05-05
  • 打赏
  • 举报
回复
上面说的都不是原因,我试了还是不行。。。

帮帮忙。。。
bingoer 2003-05-05
  • 打赏
  • 举报
回复
你把空格去掉吧!
sincere1314 2003-05-05
  • 打赏
  • 举报
回复
存储过程的缺省返回值是0,通过return可返回任何整数(如count *)

22,298

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧