Получить данные из набора данных - PullRequest
0 голосов
/ 20 декабря 2010
SqlDataAdapter da = new SqlDataAdapter("Select StudentID,StudentName from StudentMaster where StudentID = '" + start + "'", conn);              
DataSet ds = new DataSet();
da.Fill(ds,"StudentMaster");
SqlDataAdapter db = new SqlDataAdapter("Select Registration_No from Candidate_Registration where StudentID='" + start + "'", conn);
db.Fill(ds, "Candidate_Registration");

Здесь 'start' - это значение текстового поля текстового поля в предыдущей форме, то есть form2.Я хочу получить StudentName и StudentID из StudentMaster, где StudentID = начало.Таблица называется «СтудентМастер».Заполните набор данных с помощью StudentMaster.Затем я хочу получить Registration_No из Candidate_Registration, где StudentID = start.Таблица называется «Candidate_Registration».Заполните набор данных с помощью Candidate_Registration.Теперь в соответствии с 'Registration_No', который я выбрал, я хочу получить 'CourseID' из 'Registered_Courses'.Но проблема в том, как получить доступ к извлеченному «Registration_No», т.е. как поместить его в следующий запрос: если я могу взять извлеченный Registration_No в переменную с именем «reg_no», тогда «Выберите CourseID из Registered_Courses, где Registration_No =» +reg_no;

Для большего понимания я упомяну таблицы и взаимосвязи ....

StudentMaster
-------------
StudentID Primary key,
StudentName

Candidate_Registration
----------------------
Registration_No Foreign key,
ExamID Foreign key,
StudentID Foreign key,
Seat_No,
Primary key(Registration_No,ExamID)

Registered_Courses
------------------
Registration_No Primary key,
ExamID Foreign key,
CourseID Foreign key,

Course_Master
-------------
CourseID Primary key,
Course_Name,
Description

то есть, наконец, я хочу получить Course_Name для конкретного StudentID.

Может кто-нибудь, пожалуйста, помогите мне.Заранее спасибо!

1 Ответ

1 голос
/ 20 декабря 2010

Попробуйте этот запрос:

Select StudentMaster.StudentId, Course_Master.Course_Name from StudentMaster 
INNER JOIN Candidate_Registration 
ON Candidate_Registration.StudentId = StudentMaster.StudentId 
INNER JOIN Registered_Courses 
ON Registered_Courses.Registration_No = Candidate_Registration.Registration_No AND Registered_Courses.ExamID = Candidate_Registration.ExamID 
INNER JOIN Course_Master 
ON Course_Master.CourseID = Registered_Courses.CourseID
WHERE StudentMaster.StudentId = @MyId

Замените @MyId вашим параметром Id, и он предоставит вам все имена курсов для StudentId.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...