Answered by:
com.ExecuteNonQuery() function not inserting data and no error message.

Question
-
Hi, From a Windows desktop application I try to insert a row into MS Access database table using OleDb Command with ExecuteNonQuery(). Code executing normally with out errors, but data not inserted to database. Here is the code.
private void button1_Click(object sender, EventArgs e)
{
try
{
OleDbCommand com = new OleDbCommand("Insert into Devo (DID,Dname,Address,Phone) values (@id,@name,@address,@phone)", conn);
com.Parameters.AddWithValue("@id", lblCnt.Text);
com.Parameters.AddWithValue("@name", txtName.Text);
com.Parameters.AddWithValue("@address", txtAddress.Text);
com.Parameters.AddWithValue("@phone", txtPhone.Text);
conn.Open();
int x = com.ExecuteNonQuery();
MessageBox.Show("New Person info has been saved."+x.ToString(), "Saved", MessageBoxButtons.OK);
txtPhone.Text = "";
txtAddress.Text = "";
txtName.Text = "";
txtGotram.Text = "";
lblCnt.Text = (Convert.ToInt32(lblCnt.Text)+1).ToString();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message.ToString());
}
finally
{
conn.Close();
}
}
K.R.V.Prasad Sarma
- Edited by K.R.V.Prasad Friday, October 30, 2015 3:24 AM
- Moved by Sheng Jiang 蒋晟 Wednesday, November 4, 2015 12:29 AM
Friday, October 30, 2015 3:21 AM
Answers
-
Hi Edward, Thanks for reply. I changed location of Database file to D: Drive. The same code works perfect. I think we need to give write permission to application folders. I removed read-only property to the folder. But still no result. Finally moving database file out from the application directory helps me.
K.R.V.Prasad Sarma
- Edited by K.R.V.Prasad Friday, November 6, 2015 7:59 AM
- Proposed as answer by Tony---- Friday, November 6, 2015 8:56 AM
- Marked as answer by Edward8520Microsoft contingent staff Friday, November 13, 2015 6:51 AM
Friday, November 6, 2015 7:58 AM
All replies
-
Hello,
From the above code snippet, I think it's Ok. What I can think is to examine the connection , Can you use the following code to check that you are using the correct OleDb Connection?
OleDbConnection conn = new OleDbConnection(""); conn.Open(); string state = conn.State.ToString(); conn.Close();
If the above is not helpful, please send me your project which has been removed those unnecessary code. Use your OneDrive and share a link here.
Regards,
We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
Click HERE to participate the survey.Monday, November 2, 2015 5:11 AM -
Hi Herro, I checked that and the same connection is working fine to retrive data and fill the data grid. But its not responding for Insert command.
K.R.V.Prasad Sarma
Wednesday, November 4, 2015 7:06 AM -
Hi K.R.V.Prasad,
Based on your description, your connection was ok, and I assume it might be related with the insert statement, I suggest you output the “com”, and copy it to Access database to check whether it could work correctly.
Best Regards,
Edward
We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
Click HERE to participate the survey.Thursday, November 5, 2015 9:40 AM -
Hi Edward, Thanks for reply. I changed location of Database file to D: Drive. The same code works perfect. I think we need to give write permission to application folders. I removed read-only property to the folder. But still no result. Finally moving database file out from the application directory helps me.
K.R.V.Prasad Sarma
- Edited by K.R.V.Prasad Friday, November 6, 2015 7:59 AM
- Proposed as answer by Tony---- Friday, November 6, 2015 8:56 AM
- Marked as answer by Edward8520Microsoft contingent staff Friday, November 13, 2015 6:51 AM
Friday, November 6, 2015 7:58 AM -
Hi Herro Wong, Thanks for reply. I changed location of Database file to D: Drive. The same code works perfect. I think we need to give write permission to application folders. I removed read-only property to the folder. But still no result. Finally moving database file out from the application directory helps me.
K.R.V.Prasad Sarma
Friday, November 6, 2015 7:59 AM -
Hi K.R.V.Prasad,
I suggest you check the read-only property of the Access database file.
If you manually open the database, could you edit the records?
Best Regards,
Edward
We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
Click HERE to participate the survey.Saturday, November 7, 2015 4:12 AM