请问这个存储过程错在哪里?

zcm1227cn 2006-05-24 10:06:14
create proc CheckLogin
(
@userName varchar(10),
@userPwd varchar(10),
@result varchar(50) output
)
as
begin
declare @number int
set @number=(select count(*) from login where userName=@userName and userPwd=@userPwd)
if(@number <> 0)
@result='success'
else
@result='fail'
end

服务器: 消息 170,级别 15,状态 1,过程 CheckLogin,行 12
第 12 行: '@result' 附近有语法错误。
...全文
97 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
keyanshang 2006-05-25
  • 打赏
  • 举报
回复
正解
YrLijon 2006-05-25
  • 打赏
  • 举报
回复
用SELECT 赋值好些
liangpei2008 2006-05-24
  • 打赏
  • 举报
回复
楼上正解:)
create proc CheckLogin
(
@userName varchar(10),
@userPwd varchar(10),
@result varchar(50) output
)
as
begin

if exists(select 1 from login where userName=@userName and userPwd=@userPwd)
select @result='success'
else
select @result='fail'
end
frankwong 2006-05-24
  • 打赏
  • 举报
回复
对变量或者参数的赋值要用set,如:
set @result='abc'
zcm1227cn 2006-05-24
  • 打赏
  • 举报
回复
疏忽了,谢谢
xeqtr1982 2006-05-24
  • 打赏
  • 举报
回复
create proc CheckLogin
(
@userName varchar(10),
@userPwd varchar(10),
@result varchar(50) output
)
as
begin
declare @number int
set @number=(select count(*) from login where userName=@userName and userPwd=@userPwd)
if(@number <> 0)
set @result='success'
else
set @result='fail'
end

34,587

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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