Hi guys,
My application Cannot insert Record into Table more than once.
There are 3 textboxes on the form in which the user enters data to be inserted in the table. And a command button holding the code to perform the action.
What is happening is, when data is entered in the textboxes and the command button is clicked, the record in the table for the first time is created, but when I try to do it the second time, the application brings the following error message
"The changes you requested to the table were not successful because they would create duplicate values in the index, primary key, or relationship". Below is the code I am using.
Public Class frmCreate
Dim con As New OleDb.OleDbConnection
Dim cmd As New OleDb.OleDbCommand
Private Sub btnSave_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSave.Click
con = New OleDb.OleDbConnection
con.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" & Application.StartupPath & "/sale.accdb"
con.Open()
cmd.Connection = con
cmd.CommandText = "INSERT INTO tblProducts([pID], [pName], [pPrice])VALUES(@pID, @pName, @pPrice)"
cmd.Parameters.AddWithValue("@pID", txtId.Text)
cmd.Parameters.AddWithValue("@pName", txtName.Text)
cmd.Parameters.AddWithValue("@pPrice", txtPrice.Text)
cmd.ExecuteNonQuery()
txtId.Text = ""
txtName.Text = ""
txtPrice.Text = ""
MsgBox("Record Saved")
txtId.Focus()
con.Close()
End Sub
End Class
I do not know what is causing this error because even when the primary key is different it is behaving the same. It is only working after the application is restarted again.
Someone to help me identitfy the cause of the problem.
Thank you.