It has been a while since I have worked with the CommandBuilder line of objects, but perhaps you can use the .GetInsertCommand().CommandText method & property to retrieve what the builder is creating for you and display it on the screen so you can determine what issue there may be with your method.
A better approach, however, may be to simply forego the builder and control your own inserts and updates. Construct your own SQL statements and use a OleDbCommand object and the .ExecuteNonQuery() method to perform your database updates.
I did what u said so i changed my codes to like this
Public Class StudentRegistrationForm
Private Sub SRSubmitBT_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SRSubmitBT.Click
Dim conn As New System.Data.OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\Data Sources\MSHS Enrollment System Database.accdb")
Dim newrecord As New System.Data.OleDb.OleDbCommand
newrecord.CommandType = System.Data.CommandType.Text
newrecord.CommandText = "INSERT INTO Students (StudentNumber, FirstName, MiddleName, LastName) VALUES (3, 'aa', 'bb', 'cc')"
newrecord.Connection = conn
conn.Open()
newrecord.ExecuteNonQuery()
conn.Close()
MsgBox("Successful")
End Sub
Private Sub EXitBT_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EXitBT.Click
Application.Exit()
End Sub
End Class
it has no errors but it does not add a record to the database...
how is that?? please help