Mình đang tìm hiểu về MariaDB, mục đích mình muốn viết một function đơn giản để lấy ra số lượng môn học mà sinh viên đó đăng ý, ở bảng CourseRegistration chứa đẩy đủ thông tin
Lúc đâu mình thế này
CREATE FUNCTION getListCourseForStudent(Studentid int(11))
RETURNS INT
DETERMINISTIC
BEGIN
DECLARE number int;
SELECT number = count(studentid) FROM ManagementStudent.CourseRegistration WHERE studentid = Studentid;
RETURN number;
END
thi báo lỗi này: Not allowed to return a result set from a function
Sau đó mình lên mạng tìm trên thì sữa thế này
CREATE FUNCTION getListCourseForStudent(Studentid int(11))
RETURNS INT
DETERMINISTIC
BEGIN
DECLARE number int;
SELECT count(studentid) INTO number FROM ManagementStudent.CourseRegistration WHERE studentid = Studentid;
RETURN number;
END
Nhưng khi chạy thì truyền tham số nào nó cũng đưa ra tất cả các môn học của tất cả sinh viên.
Sai đâu vậy mọi người.