我正在编写一个程序来显示当前学生是否在表中。测试后,我遇到了几个错误......
Create procedure stuID(p_id int)
begin
declare v_msg varchar(100);
declare count_id int;
select count(*) into count_id from students where id = p_id;
If null then
set v_msg := 'null';
Elseif count_cl_id = 1 then
set v_msg := 1;
Elseif count_cl_id = 0 then
set v_msg := 0;
End if;
Select v_msg;
end;
所以我创建了另一个程序来测试这些......
创建过程 test_stuID() 开始
-- Test with null
call stuID(null);
-- Test with invalid ID
call stuID('0');
-- Test with String
call stuID( 'false' );
-- Test with true ID
call stuID('25');
end;
#
两个问题:
1) null case 不返回 v_msg 作为 'null'
2) 不返回真正有效的 ID 25。
我究竟做错了什么???提前致谢。