在vb.net中将数据添加到access表

在vb.net中将数据添加到access表,vb.net,ms-access-2007,Vb.net,Ms Access 2007,我已经在VisualStudio2010中创建了一个表单&下面是我正在使用的代码 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim dbProvider = "Provider=Microsoft.ACE.OLEDB.12.0;" Dim dbSource = "Data Source=|Da

我已经在VisualStudio2010中创建了一个表单&下面是我正在使用的代码

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim dbProvider = "Provider=Microsoft.ACE.OLEDB.12.0;"
        Dim dbSource = "Data Source=|DataDirectory|\Membership.accdb"
        Dim con As New OleDb.OleDbConnection
        con.ConnectionString = dbProvider & dbSource
        con.Open()

        Dim sql = "INSERT INTO Memberdetail (Membername, Memberadd, Membercontact, Memberphone1, Memberphone2, Membersince) VALUES (?, ?, ?, ?, ?, ?)"
        Using cmd = New OleDb.OleDbCommand(sql, con)

            cmd.Parameters.AddWithValue("@p1", Me.Memname.Text)
            cmd.Parameters.AddWithValue("@p2", Me.Memadd.Text)
            cmd.Parameters.AddWithValue("@p3", Me.Memcontact.Text)
            cmd.Parameters.AddWithValue("@p4", Me.Memphone1.Text)
            cmd.Parameters.AddWithValue("@p5", Me.Memphone2.Text)
            cmd.Parameters.AddWithValue("@p6", Me.DateTimePicker1.Text)
            cmd.ExecuteNonQuery()
        End Using
        Me.Close()
    End Sub
但这会每次编辑表中唯一可用的数据,并且在输入新数据时不会向表中添加新行

我错在哪里


请提供帮助。

编辑是什么意思?编辑是指每次都用同一记录中的记录数据替换表单数据,而不是向表中添加新行。您是否尝试过不使用.net直接在Access中运行相同的查询?我不知道您的表结构,但如果membername是主键,它将不允许您将相同的名称添加到表中两次。如果是这样的话,它应该在.net中抛出一个异常。