Private Sub GetAffectedTraits(ByVal QuestionIndex)
NumberOfTraitsAffected = 0
Dim IndexTracker As Integer
Dim TraitsAffected(23) As String
'Set all to Null value
For i As Integer = 1 To 23
TraitsAffected(i) = " "
Next
Dim Command As New OleDbCommand("SELECT [Affected Trait] FROM Sheet1 WHERE QuestionIndex=" & QuestionIndex & "", TraitValuesConn)
DB_Reader = Command.ExecuteReader
While DB_Reader.Read()
TraitsAffected(IndexTracker) = DB_Reader("Affected Trait")
IndexTracker = 1
End While
For i As Integer = 1 To 23
MsgBox(TraitsAffected(i)) 'Does not include affected traits yet for some reason
Next
End Sub
在此代碼中,我試圖從使用相同 ID(或 QuestionIndex)存盤的資料庫中選擇并存盤每個“受影響的特征”。我希望它們分別存盤在 TraitsAffected 陣列中。這是我目前正在嘗試的,但它根本沒有改變陣列。我想堅持我一直在使用 OLEDB 連接的語法。如果您需要更多資訊,我會盡快回復,因為我的任務截止日期很快就要到了。提前致謝 :)
uj5u.com熱心網友回復:
如果您不確定受影響特征的數量,最好使用 List 而不是 Array。
檢查以下代碼,看看它是否適合您。
Private Sub GetAffectedTraits(ByVal QuestionIndex)
Dim NumberOfTraitsAffected = 0
Dim TraitsAffected As List(Of String) = New List(Of String)
Using TraitValuesConn As OleDbConnection = New OleDbConnection("your connection string")
TraitValuesConn.Open()
Dim Command As New OleDbCommand("SELECT [Affected Trait] FROM Sheet1 WHERE QuestionIndex=" & QuestionIndex & "", TraitValuesConn)
Dim DB_Reader = Command.ExecuteReader
While DB_Reader.Read()
TraitsAffected.Add(DB_Reader("Affected Trait"))
End While
End Using
For Each value As String In TraitsAffected
MsgBox(value)
Next
End Sub
如果代碼不起作用,請提供有關資料庫設計的更多資訊。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/378919.html
