@obh INT OUTPUT AS BEGIN select @bh1 = max(bh) from staff1 where dwid = @iid; select @bh2 = max(bh) from staff2 where dwid = @iid; if (@bh1 > @bh 2 ) @obh = @bh1 else @obh = @ bh2sql2000的存储过程语法检查老过不去,应该是if处写的有问题,请教怎样修改,谢谢
select @bh1 = max(bh) from staff1 where dwid = @iid; select @bh2 = max(bh) from staff2 where dwid = @iid; SQLServer2000不支持分号结尾语句吧。把分号去掉试试。
if (@bh1 > @bh 2 )@bh 2 有空格
CREATE PROCEDURE MyBH @id INT, @bh1 int, @bh2 int, @obh INT OUTPUT AS BEGIN select @bh1 = max(bh) from staff1 where id = @id; select @bh2 = max(bh) from staff2 where id = @id; if(@bh1 > @bh2) @obh = @bh1 else @obh = @bh2 END GO
@obh = @bh1
else
@obh = @ bh2
select @bh1 = max(bh) from staff1 where dwid = @iid;
select @bh2 = max(bh) from staff2 where dwid = @iid;
SQLServer2000不支持分号结尾语句吧。把分号去掉试试。
CREATE PROCEDURE MyBH
@id INT,
@bh1 int,
@bh2 int,
@obh INT OUTPUT AS BEGIN
select @bh1 = max(bh) from staff1 where id = @id;
select @bh2 = max(bh) from staff2 where id = @id;
if(@bh1 > @bh2)
@obh = @bh1
else
@obh = @bh2
END
GO