Запросить таблицу соединений из базы данных MS Access на веб-странице ASP / C #

Я пишу страницу ASP, где: Вход студентов -> Студент достигает приветственной страницы со ссылкой, чтобы показать им свои зарегистрированные курсы -> Связанная страница показывает информацию о курсе, описание и т. Д.

У меня есть база данных MS Access, в которой есть 3 таблицы: студенты (содержащие информацию о студентах), курсы (информация о курсе, такая как идентификатор, описание и т. Д.) И EnrolledCourses (где EnrolledCourses - это соединительная таблица - я думаю, что это правильный термин - из Студенты и курсы, представляющие курсы, на которые студенты записались).

Мне нужно отобразить, на какие курсы они записаны, и информацию о курсе, а также данные из EnrolledCourses, которые сообщают о зачисленных курсах, и данные из курсов, которые предоставляют подробную информацию о курсе. У меня проблемы с определением запроса, чтобы получить эту информацию. Вот что я до сих пор придумал:

{               
        //Give the command SQL to execute   
    comm.CommandText = "SELECT Courses.Id, Courses.CourseSubject, Courses.CourseName, Courses.CourseNumber, Courses.CourseDescription FROM Courses, StudentToCourse, Students WHERE Courses.Id = StudentToCourse.Courseid AND Session["id"] = StudentToCourse.Studentid";

}

Просто интересно, на правильном ли это пути? Я все время получаю сообщение об ошибке компиляции: Сообщение об ошибке компилятора: CS1002:; ожидал


person adL    schedule 16.05.2013    source источник


Ответы (1)


Можете ли вы попробовать это:

    comm.CommandText = "SELECT Courses.Id, Courses.CourseSubject, Courses.CourseName, Courses.CourseNumber, Courses.CourseDescription
FROM Courses, StudentToCourse, Students WHERE Courses.Id = StudentToCourse.Courseid AND StudentToCourse.Studentid = " + Session["id"];

Но у него есть уязвимости. Вы должны добавить такие параметры, как:

comm.CommandText = "... StudentToCourse.Studentid=@studentID";
comm.Parameters.AddWithValue("@studentID", Session["id"]);

Так лучше / безопаснее.

person JustWork    schedule 16.05.2013