将单选按钮选中的值插入数据库

时间:2014-02-07 16:44:08

标签: c# sql

我正在构建一个带有2个性别单选按钮的C#Windows应用程序。我正在使用简单的插入查询在数据库中插入数据。

有人可以帮我将所选的单选按钮值插入数据库吗?我正在使用2个单选按钮,而不是单选按钮列表。

目前我的查询如下:

Class1.ABC("insert into emp(code,names,m_name,desgnation,gender) 
                        values ('" + textBox1.Text + "','" + 
                                     textBox2.Text + "','" + 
                                     textBox3.Text + "','" + 
                                     textBox4.Text + "','" + 
                                     textBox5.Text + "','" + 
                                     radioButton1.Checked+"' )");

5 个答案:

答案 0 :(得分:0)

您可以检查checked属性并根据您的要求设置值。

Class1.ABC("insert into emp(code,names,m_name,desgnation,gender) 
                        values ('" + textBox1.Text + "',
                                '" + textBox2.Text + "',
                                '" + textBox3.Text + "',
                                '" + textBox4.Text + "',
                                '" + textBox5.Text + "',
                                '"+ radioButton1.Checked ? "Male" : "Female" +"' )");

注意:使用parameterized queries

答案 1 :(得分:0)

只需插入单选按钮文本

喜欢这个

Class1.ABC("insert into emp(code,names,m_name,desgnation,gender) 
                        values ('" + textBox1.Text + "','" + 
                                     textBox2.Text + "','" + 
                                     textBox3.Text + "','" + 
                                     textBox4.Text + "','" + 
                                     textBox5.Text + "','" + 
                                     radioButton1.Text + "' )");

答案 2 :(得分:0)

private string RadioButtonText()
{
    if (radioButton1.Checked)
    {
        return  radioButton1.Text;
    }
    else
    {
        return  radioButton2.Text;
    }
}

答案 3 :(得分:0)

您可以创建一个方法,将RadioButton的列表传递给该方法并执行验证,最后在该方法内部检索Text属性。这样一来,您就可以在将来需要时更轻松地扩展功能,保持原始代码的整洁(没有奇怪的内联验证/检查)。

我会做类似的事情:

public string GetSelectedRadioButtonText(RadioButton[] radioButtons)
{
    // possible additional checks: check multiple selected, check if at least one is selected and generate more descriptive exception.

    // works for above cases, but throws a generic InvalidOperationException if it fails
    return radioButtons.Single(r => r.Checked).Text;
}

public void YourMethod()
{
    Class1.ABC("insert into emp(code,names,m_name,desgnation,gender) 
                values('" + textBox1.Text + "', '" + 
                             textBox2.Text + "','" +
                             textBox3.Text + "','" +
                             textBox4.Text + "','" +
                             textBox5.Text + "','" +
                             this.GetSelectedRadioButtonText(new[] { rb1, rb2 }) + "' )");
}

答案 4 :(得分:-1)

你可以试试这个:

添加一个Label,使其不可见。将已检查的radiobutton的值放入标签中。现在在sql语句中,使用label的值(实际上是检查的radiobutton的值)插入“gender”。 我建议这只有你是一个初学者和无论如何想要让程序运行。