パラメータとして何も渡されなかった場合にテーブル全体を返すストアド プロシージャを作成しました。しかし、studentId が渡された場合は、彼女の詳細を返します。このようなもの
create procedure usp_GetStudents @studentId int = null
as
if (@studentId = null)
select * from Student
else
select * from Student where studentId = @studentId
出力
exec usp_GetStudents -- No records returned though there are records in the table
exec usp_GetStudents @studentId = null -- No records returned
exec usp_GetStudents @studentId = 256 -- 1 entry returned
テーブルのすべてのエントリを返すための構文/ロジックに問題があるかどうか知りたいですか?
ありがとうございました