The following code is available to insert an entry into the Access database:

OleDbConnection conn = OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:/BD.mdb"); OleDbCommand cmd = new OleDbCommand(); cmd.CommandType = CommandType.Text; cmd.CommandText = "INSERT ThemeTest (Id_theme, NameTheme, NumberQuestion, Prim) VALUES " + "(@Id_theme , @NameTheme, @NumberQuestion, @Prim);"; cmd.Connection = conn; cmd.Parameters.AddWithValue("@Id_theme", 5); cmd.Parameters.AddWithValue("@NameTheme", textBox1.Text); cmd.Parameters.AddWithValue("@NumberQuestion", numericUpDown1.Value); cmd.Parameters.AddWithValue("@Prim", textBox2.Text); conn.Open(); // cmd.ExecuteNonQuery(); // Здесь выдает ошибку о неверной команде Insert conn.Close(); 

Help solve the problem.

    2 answers 2

     cmd.CommandText = "INSERT ThemeTest (Id_theme, NameTheme, NumberQuestion, Prim) VALUES " + "(@Id_theme , @NameTheme, @NumberQuestion, @Prim);"; 

    Missed into the command insert.

     cmd.CommandText = "INSERT into ThemeTest (Id_theme, NameTheme, NumberQuestion, Prim) VALUES " + "(@Id_theme , @NameTheme, @NumberQuestion, @Prim);"; 
    • for sure) Thank. - IntegralAL

    To generate trivial commands, it is advisable to use the System.Data.OleDb.OleDbCommandBuilder class.