用MySql的Navicat创建存储过程总是报1458错误
问题描述:
下面是我穿件存储过程的代码。求大神帮忙看看。真心很急,明天就要用。
create procedure searchStudentGrade(in id char)
begin
if id is null
select student.StudentID,student.StudentName,student.ClassNumber,grade.ExamID,course.CourseName,grade.Grade,course.CourseID
from student,grade,course
where student.StudentID=grade.StudentID and grade.CourseID=course.CourseID;
else
select student.StudentID,student.StudentName,student.ClassNumber,grade.ExamID,course.CourseName,grade.Grade,course.CourseID
from student,grade,course
where student.StudentID=grade.StudentID and grade.CourseID=course.CourseID and grade.StudentID=id;
end if;
end;
答
create procedure searchStudentGrade(in id char)
begin
if id is null then 这里少了一个then吧
select student.StudentID,student.StudentName,student.ClassNumber,grade.ExamID,course.CourseName,grade.Grade,course.CourseID
from student,grade,course
where student.StudentID=grade.StudentID and grade.CourseID=course.CourseID;
else
select student.StudentID,student.StudentName,student.ClassNumber,grade.ExamID,course.CourseName,grade.Grade,course.CourseID
from student,grade,course
where student.StudentID=grade.StudentID and grade.CourseID=course.CourseID and grade.StudentID=id;
end if;
end;
答
还有那里不对?报什么错?