0
Dim  _tableBackLogs As System.Data.DataTable

Do While i - 2 > 0
_tableBackLogs = Global.DataAccess.GetDataTable("SELECT SubjectID,SubjectName,Grade FROM SubjectPI WHERE RegNo='" & CInt(HttpContext.Current.Session("userName")) & "' AND Status='Fail' AND Semester='" & i - 2 & "'")
i = i - 2
Loop

これを行うと、 内の以前のデータが置き換えられますDataTable。以前のデータを保持したい、つまり、以前の行を置き換えずに新しい行を DataTable に追加したい。

4

2 に答える 2

1

コードを次のように置き換えます。

Dim _tableBackLogs As New System.Data.DataTable

Do While i - 2 > 0
    _tableBackLogs.Merge(Global.DataAccess.GetDataTable("SELECT SubjectID,SubjectName,Grade FROM SubjectPI WHERE RegNo='" & CInt(HttpContext.Current.Session("userName")) & "' AND Status='Fail' AND Semester='" & i - 2 & "'"))
    i = i - 2
Loop
于 2012-04-15T03:38:13.073 に答える
0

Merge メソッドを使用する

Dim  _tableBackLogs As System.Data.DataTable

Do While i - 2 > 0
_tableBackLogs.Merge(Global.DataAccess.GetDataTable("SELECT SubjectID,SubjectName,Grade FROM SubjectPI WHERE RegNo='" & CInt(HttpContext.Current.Session("userName")) & "' AND Status='Fail' AND Semester='" & i - 2 & "'"))
i = i - 2
Loop
于 2012-04-14T09:19:28.933 に答える