我对 C# 编程还是新手,当我尝试在数据库中添加数据但在这一行命令之后出现错误时,任何人都可以帮助我解决此错误。ExecuteNonQuery();
private void button1_Click(object sender, EventArgs e)
{
string constr = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\aberto\Documents\esimar_db.accdb;Persist Security Info=False;";
string cmdstr = "insert into employee(employee_name, location,connection,depanse,caisse)values(@employee_name,@location,@connection,@depanse,@caisse)";
OleDbConnection connect = new OleDbConnection(constr);
OleDbCommand command = new OleDbCommand(cmdstr, connect);
connect.Open();
command.Parameters.AddWithValue("@employee_name", textBox1.Text);
command.Parameters.AddWithValue("@location", comboBox1.Text);
command.Parameters.AddWithValue("@connection", textBox2.Text);
command.Parameters.AddWithValue("@depanse", textBox3.Text);
command.Parameters.AddWithValue("@printing", textBox4.Text);
command.Parameters.AddWithValue("@caisse", textBox5.Text);
command.ExecuteNonQuery();
MessageBox.Show( "Record saved successfully");
connect.Close();
}
CONNECTION
是 Access SQL 中的 保留字,因此如果要将其用作列(或表)名称,则必须将其括在方括号中:
string cmdstr =
"insert into employee(employee_name, location, [connection], depanse, caisse) values (@employee_name, @location, @connection, @depanse, @caisse)";
另请注意,您的 CommandText 仅包含五 (5) 个参数,但您有六 (6) 个
Parameters.AddWithValue
语句。 OleDb 忽略参数名称,只关注参数声明的顺序,因此只有这些语句的前五 (5) 条语句才会产生任何效果。
string constr = @"Provider = Microsoft.Jet.OLEDB.4.0;数据源 = C:\Users\user\OneDrive\Рабочий стол\Драгоценные камни в Кыргызстане A\Database3.mdb"; string cmdstr = "插入 Огранки ([название огранки], [характеристики],[примерыкамней],[изображение] )values([@название огранки],@характерист ики,@примеры камней,@изображение)";
OleDbConnection connect = new OleDbConnection(constr);
OleDbCommand command = new OleDbCommand(cmdstr, connect);
connect.Open();
command.Parameters.AddWithValue("[@название огранки]", textBox1.Text);
command.Parameters.AddWithValue("[@характеристики]", характеристикиTextBox.Text);
command.Parameters.AddWithValue("[@примеры камней]", примеры_камнейTextBox.Text);
command.Parameters.AddWithValue("[@изображение]", изображениеPictureBox.Text);
command.ExecuteNonQuery();
MessageBox.Show("Record saved successfully");
connect.Close();
Я все еще новичок в программировании на C#, любой может помочь мне решить эту ошибку, возникающую, когда я аюсь добавить данные в базу данных, но ошибка появляется после этой команды строки。执行非查询();