2009-03-31 7 views
0

は、[保存]ボタンで、このコードに到達するために...のDataAdapter、DataTableに、について多くを読み:アクセスデータベースにレコードを追加する場合、このコードのどこにエラーがありますか?

'insert new row 
ds.Tables("Employees").Rows.Add(ENumTxt.Text, ENameTxt.Text, EPosTxt.Text, 
    EAgeTxt.Text, ESalTxt.Text, EPhonTxt.Text, EAdrsTxt.Text) 
'save changes 
ds.AcceptChanges() 
Try 
    If ds.HasChanges Then 
    Dim AffectedDS As DataSet = ds.GetChanges(DataRowState.Added) 
    'im ComBuilder As New OleDb.OleDbCommandBuilder(da) 
    da.InsertCommand = ComBuilder.GetInsertCommand 
    da.Update(AffectedDS, "Employees") 
    End If 
Catch e1 As OleDb.OleDbException 
    MessageBox.Show(e1.Message) 
End Try 

==================== ========================================== ========= は、その後、私はこの試みた:実行時間で

Dim cb As New OleDb.OleDbCommandBuilder(da) 
' Insert a new record in the DataSet 
Dim r As DataRow = ds.Tables("Employees").NewRow() 
r("EID") = ENumTxt.Text 
r("EName") = ENameTxt.Text 
r("Age") = EAgeTxt.Text 
r("Salary") = ESalTxt.Text 
r("EPhone") = EPhonTxt.Text 
r("EAddress") = EAdrsTxt.Text 
ds.Tables("Employees").Rows.Add(r) 

' Insert the record even in the database 
da.Update(ds.Tables("Employees").GetChanges()) 
' Align in-memory data with the data source ones 
ds.AcceptChanges() 

==========

を、私は両方のケースで同じエラーメッセージが表示されました

"Syntax error in INSERT INTO statement" 

このエラーを修正するためのガイドラインを教えてください。

+0

コードを再フォーマットして、問題を明確にしてください。私たちはあなたを助けます:) –

答えて

0

THERエラーが

どのようにあなたのデータアダプターの「InsertCommandは」で指定されたINSERT文がどのように見えるん...エラーが言うように、あなたのINSERT文でありますか?

+0

私はそれについて考えましたが、私はそれに到達できませんでした、どのようにINSERTステートメントをチェックできますか? – mozon

0

唯一のことは、Commandbuilderを使用する場合、テーブルにプライマリキーが定義されているかどうかです。

+0

はい、EIDが主キーです。 – mozon

関連する問題