如何插入支票和复选框的值?

时间:2017-02-13 14:22:30

标签: c#

如何插入支票和复选框的值,并帮助我将其读取到checkbox1 = checkbox1,依此类推,并使用oledbreader感谢

的名称=文本框
private void btnSave_Click(object sender, EventArgs e)
{

    string n = "";
    string n2 = "";
    string n3 = "";
    if (checkBox1.Checked == true)
    {
        n= "Basketball";
    }
    if (checkBox2.Checked == true)
    {
        n2 = "Cooking";
    }
    if (checkBox3.Checked == true)
    {
        n2 = "Reading";
    }

    try
    {
        connection.Open();
        string query = "insert into RecordC ([Select], [Name]) values (@Select, @Name)";

        OleDbCommand command = new OleDbCommand(query, connection);

        command.Parameters.AddWithValue("@Select", checkBox1.Checked);
        command.Parameters.AddWithValue("@Select", checkBox2.Checked);
        command.Parameters.AddWithValue("@Select", checkBox3.Checked);
        command.Parameters.AddWithValue("@Name", n);
        command.Parameters.AddWithValue("@Name", n2);
        command.Parameters.AddWithValue("@Name", n3);


        command.ExecuteNonQuery();

        MessageBox.Show("Added Successfully!");
        connection.Close();
    }
    catch { }
}

and here is my table

2 个答案:

答案 0 :(得分:1)

您正在尝试插入3条记录,因此您的查询应为:

 string query = "insert into RecordC ([Select], [Name]) values (@Select1, @Name1),(@Select2, @Name2),(@Select3, @Name3)";

            OleDbCommand command = new OleDbCommand(query, connection);

            command.Parameters.AddWithValue("@Select1", checkBox1.Checked);
            command.Parameters.AddWithValue("@Select2", checkBox2.Checked);
            command.Parameters.AddWithValue("@Select3", checkBox3.Checked);
            command.Parameters.AddWithValue("@Name1", n);
            command.Parameters.AddWithValue("@Name2", n2);
            command.Parameters.AddWithValue("@Name3", n3);

修改

正如史蒂夫所说,首先处理你的捕获(不要吞下任何异常,但最好记录它。另外,上面的语句可能在语法上是错误的(它是基于SQL Server的)。 在任何情况下,异常跟踪都将指导您完成纠正查询的步骤。

答案 1 :(得分:0)

            command.Parameters.AddWithValue("@Select", checkBox1.Checked);
            command.Parameters.AddWithValue("@Name", n);
            command.ExecuteNonQuery();
            command.Parameters.AddWithValue("@Select", checkBox2.Checked);
            command.Parameters.AddWithValue("@Name", n2);
            command.ExecuteNonQuery();
            command.Parameters.AddWithValue("@Select", checkBox3.Checked);
            command.Parameters.AddWithValue("@Name", n3);
            command.ExecuteNonQuery();