I would suggest some improvements in the code........
Instead of this .....
OleDbCommand cmd = new OleDbCommand("INSERT INTO USERS VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", conn);
try using
OleDbCommand cmd = new OleDbCommand("INSERT INTO USERS(col1,col2,col3,col4,col5) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", conn);
col1 are name of actual columns in tables.......
You can confirm if record was inserted in table by using.........
int i=cmd.ExecuteNonQuery();
if(i>0)
{
MessageBox.Show("Record Added");
}
Instead of using parameter two times like.......
cmd.Parameters.Add("user_id", OleDbType.VarChar);
cmd.Parameters["user_id"].Value = userIDBox.Text;
use the following thus reduce you coding effort and time if you like I m too lazy.....;-)
cmd.Parameters.Add("user_id", OleDbType.VarChar).Value=userIDBox.Text;
Best of luck......