Я пишу запрос SELECT для использования в моем проекте. До сих пор у меня есть(SQL, VB.NET) Как выбрать несколько значений из одной строки и назначить их переменным?
Dim conn As New OleDbConnection
Dim StudentID, GradeID, SubjectID As Integer
Dim YourGrade(4), YourSubject(4) As String
conn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source =H:\Year 13 Computer Science\Project\Usernames and Passwords.accdb"
conn.Open()
Dim sql = "Select * From Grades where StudentID =" & CurrentID
Dim cmd As New OleDbCommand(sql, conn)
Dim dr As OleDbDataReader = cmd.ExecuteReader
While dr.Read
StudentID = dr("StudentID")
GradeID = dr("GradeID")
SubjectID = dr("SubjectID")
End While
Моя проблема заключается в том, что мне нужно, чтобы быть в состоянии иметь динамическое количество SubjectIDs и GradeIDs быть выбран, в случае, если студент принимает больше или меньше предметов, чем нормальные три.
Мой запрос производит:
StudentID GradeID SubjectID
1 2 1
1 4 13
1 3 19
CurrentID является "1" для целей настоящего.
Каждый идентификатор GradeID и SubjectID соответствует значениям в других таблицах, над которыми я могу работать позже.
Мне нужно иметь каждый из этих трех идентификаторов класса в отдельном значении, массив можно использовать, но я не знаю, как его кодировать. Я попытался сделать это раньше, как показано в «YourGrade (4), YourSubject (4)».
Я намерен использовать данные для заполнения сетки данных.
Если вы хотите использовать данные для сетки данных, почему бы просто не использовать адаптер даты для заполнения набора данных или таблицы данных? –
Моя проблема заключается не в том, как представить данные, у меня есть другие действующие datagrids в моей программе. Если вы прочитаете вопрос, вы увидите, что мои данные из таблицы представляют собой ряд чисел, которые не передавали бы какую-либо информацию пользователю, и поэтому мне нужны другие функции, прежде чем я смогу это сделать. –