Прямо сейчас ваша хранимая процедура выбирает все оценки.Первое, что нужно сделать, - это параметризовать запрос, приняв пользователя в качестве ввода и используя предложение WHERE, чтобы найти только оценки для этого учащегося.Не видя ваших таблиц, я не могу точно сказать, как это будет выглядеть, но в качестве примера: SELECT * FROM Grades WHERE StudentId = @StudentId;
Второе, что вам нужно выяснить, - это как получитьидентификатор студента текущего пользователя, а затем передать его в хранимую процедуру.Опять же, не видя ваших таблиц, я с трудом догадываюсь.Похоже, у вас уже есть имя пользователя текущего пользователя.Можете ли вы выполнить запрос, чтобы найти studentId по имени пользователя?Если это так, то сначала вам нужно запустить эту процедуру с именем пользователя в качестве параметра для получения studentId.
Третья проблема связана с вашим первым запросом.Поскольку он не был параметризован, он подвержен атакам SQL-инъекций.Это создает серьезную угрозу безопасности.Если кто-то злонамеренно вводит имя пользователя или пароль, он может избежать SQL, который вы намеревались запустить, и отбросить все ваши таблицы.
Надеюсь, это поможет!