Hi, i am trying to add a new row into a microsoft access database and cant understand why it wont work. Can anyone please help me understand what this means? The error message says:
************** Exception Text **************
System.Data.OleDb.OleDbException: Syntax error in INSERT INTO statement.
at System.Data.Common.DbDataAdapter.Update(DataRow[] dataRows, DataTableMapping tableMapping)
at System.Data.Common.DbDataAdapter.Update(DataTable dataTable)
at movie_rentals.employeeadd.Button2_Click(Object sender, EventArgs e) in C:\Users\Rik\Desktop\Riks work\VB\pictures for vb\DVDs r us\Employee Add.vb:line 409
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventAr gs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.ControlNativeWindow.OnMessage (Message& m)
at System.Windows.Forms.ControlNativeWindow.WndProc(M essage& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Actual Code **************
Try
Dim connStr As String = "Provider = Microsoft.Jet.OLEDB.4.0;" & _
"Data Source = dvd.mdb"
Dim aDataTable As New DataTable
Dim squlStr As String = "SELECT * From Users"
Dim oleDbStaffAdapter As New OleDb.OleDbDataAdapter(squlStr, connStr)
aDataTable.Clear()
oleDbStaffAdapter.Fill(aDataTable)
Dim MyNewRow As DataRow = aDataTable.NewRow
MyNewRow("number") = staffnum.Text
MyNewRow("password") = staffpassword.Text
MyNewRow("access") = "1"
MyNewRow("first name") = firstname.Text
MyNewRow("last name") = lastname.Text
MyNewRow("date of birth") = dob.Text
MyNewRow("address line 1") = address1.Text
MyNewRow("address line 2") = address2.Text
MyNewRow("town") = town.Text
MyNewRow("county") = county.Text
MyNewRow("post code") = postcode.Text
aDataTable.Rows.Add(MyNewRow)
Dim changes As Integer
Dim commandbuilder As New OleDb.OleDbCommandBuilder(oleDbStaffAdapter)
changes = oleDbStaffAdapter.Update(aDataTable)
Catch ex As InvalidOperationException
MsgBox(ex.Message)
End Try
Thanks, Rik