vb Code:
Public Sub SaveMainDatabaseForEdit() SQL = "SELECT [ID] FROM Classes" Dim oAdapter As New OleDbDataAdapter(SQL, oConnect) oAdapter.Fill(oDataSet) For Each DataRow As DataRow In oDataSet.Tables(0).Rows MsgBox(DataRow(5).ToString) Next oConnect = New OleDbConnection(sConnectionString & "Classes.mdb") SQL = "UPDATE Classes SET [Class Name] = @ClassName, [Class Code] = @ClassCode, [Class Room] = @ClassRoom, [Grade] = @Grade, [Teacher] = @Teacher WHERE ID = @ID" Using oCommand As New OleDbCommand(SQL, oConnect) With frmEditClasses oCommand.Parameters.AddWithValue("@ClassName", .txtClassName.Text) oCommand.Parameters.AddWithValue("@ClassCode", .txtClassCode.Text) oCommand.Parameters.AddWithValue("@ClassRoom", .txtClassRoomNum.Text) oCommand.Parameters.AddWithValue("@Grade", .txtGrade.Text) oCommand.Parameters.AddWithValue("@Teacher", .txtTeacher.Text) oCommand.Parameters.AddWithValue("@ID", .icmbClassesIndex + 1) oConnect.Open() oCommand.ExecuteNonQuery() End With End Using End Sub
That code will Edit & Save to the Row the ComboBox Selected Index is selected.
It's set to a variable and used here:
vb Code:
oCommand.Parameters.AddWithValue("@ID", .icmbClassesIndex + 1)
------
I've been trying this way:
vb Code:
Public Sub RefillIDColumn() oConnect = New OleDbConnection(sConnectionString & "Classes.mdb") SQL = "SELECT [ID] FROM Classes" Using oAdapter As New OleDbDataAdapter(SQL, oConnect) oConnect.Open() oAdapter.Fill(oDataSet) Dim i2 As Integer For Each i As DataRow In oDataSet.Tables(0).Rows SQL = "INSERT INTO CLASSES ([ID]) VALUES (@ID)" Using oCommand As New OleDbCommand(SQL, oConnect) oCommand.Parameters.AddWithValue("@ID", i2) oCommand.ExecuteNonQuery() End Using ' MsgBox(oDataSet.Tables(0).Rows(i2).Item(0).ToString) i2 += 1 Next End Using End Sub
What that is doing is just completly rewriting the ID Column.




Reply With Quote