below is a function i've been using to save a user to a db

- i've used the command builder to generate my SQL but it keeps returning 'syntax error in insert command' and i can't see what im doing wrong n e help would be appreciated

Public Function SaveUser() As String
'Dim MyDs As New System.Data.DataSet()
Dim MyDs As New StandardClasses.NWDataSet()
Dim MyDa As New OleDb.OleDbDataAdapter()
Dim MyCn As New OleDb.OleDbConnection()
Dim sSQLString As String
Dim bAddNew As Boolean
Dim sReturn As String

SaveUser = "Error"
sReturn = Me.IsCorrect
If Not sReturn = "OK" Then
SaveUser = sReturn
Exit Function
End If

If Me.UserID.ToString = Me.UserID.Empty.ToString Then
sSQLString = "SELECT * FROM NWUSER"
bAddNew = True
Me.gUserID.NewGuid()
Else
sSQLString = "SELECT * FROM NWUSER WHERE USERID = '" & Me.UserID.ToString & "'"
bAddNew = False
End If

Dim MyCo As New OleDb.OleDbCommand(sSQLString, MyCn)

MyCn = db.CreateDBConnection()

MyCo.CommandText = sSQLString
MyCo.Connection = MyCn
MyDa.SelectCommand = MyCo

MyDs = db.CreateDataSet(sSQLString, "NWUSER")

Dim MyDataRow As System.Data.DataRow
If bAddNew Then
MyDataRow = MyDs.Tables("NWUSER").NewRow
Else
MyDataRow = MyDs.Tables("NWUSER").Rows(0)
MyDs.Tables("NWUSER").Rows(0).BeginEdit()
End If

MyDataRow("USERNAME") = Me.Username
MyDataRow("PASSWORD") = Me.Password
MyDataRow("USERID") = Me.gUserID

If bAddNew Then
MyDs.Tables("NWUSER").Rows.Add(MyDataRow)
Else
MyDs.Tables("NWUSER").Rows(0).EndEdit()
End If

Dim MyCb As OleDb.OleDbCommandBuilder = New OleDb.OleDbCommandBuilder(MyDa)

MyCb.DataAdapter = MyDa

MyDa.UpdateCommand = MyCb.GetUpdateCommand
MyDa.InsertCommand = MyCb.GetInsertCommand

Try
MyDa.Update(MyDs.Tables("NWUSER"))
SaveUser = "OK"
Catch myOleDbException As System.Data.OleDb.OleDbException
SaveUser = myOleDbException.Message
Catch myInvalidOperationException As System.InvalidOperationException
SaveUser = myInvalidOperationException.Message
Finally
MyCn.Close()
End Try
End Function