Вводить реестры с checkbox C#

Я выписываю реестры в C# ASP.NET с SQL Server, проблема состоит в том, что я не знаю, как в том, чтобы объявлять checkbox для того, чтобы, когда будет выбран один или несколько, они были выписаны в моей таблице. Это - то, что у меня есть: Таблица пол и возраст - checkbox.

 SqlConnection conn = new SqlConnection(@"Data Source=(local);Initial   Catalog=Sistemaa;User ID=sa;Password=344");
 SqlCommand cmd=new SqlCommand("insert into Empleados(nombre, trabajo, sexo, edad)values ("+this.txtnombre.text+",'"+this.txttrabajo.text+....(AQUI ES DÓNDE NO SÉ CÓMO AGREGAR LOS CHECKBOX))

Это моя таблица

introducir la descripción de la imagen aquí

1
задан 24.01.2017, 20:45
0 ответов

Дополненный ответ Леандро поместил бы следующее утверждение:

string connstring = @"Data Source=(local);Initial   Catalog=Sistemaa;User ID=sa;Password=344";
using (SqlConnection conn = new SqlConnection(connstring)) 
{

    string sql = @"insert into Empleados (nombre, trabajo, sexo, edad) values (@nombre, @trabajo, @sexo, @edad)"; 

    SqlCommand cmd = new SqlCommand(sql, conn); 
    cmd.Parameters.AddWithValue("@nombre", txtnombre.text); 
    cmd.Parameters.AddWithValue("@trabajo", txttrabajo.text);
    cmd.Parameters.AddWithValue("@sexo", checkboxSexoMasculino.checked ? "M" : "F");
    cmd.Parameters.AddWithValue("@edad", textEdad.text);
    cmd.ExecuteNonQuery(); 

}

Это значит, что он будет оценен checkboxSexoMasculino.checked, если результат true он будет класться "M", если результат false он будет класться "F", главным образом его один IF в единственной линии.

2
ответ дан 03.12.2019, 17:31
  • 1
    Одна сомневается в pará метры помещают себе даже, что не считал процедуры хранившимися? –  25.01.2017, 17:42
  • 2
    Привет Marth, pará метры кладутся, всякий раз когда в решении SQL así объяви их с @nombre, например. Рекомендует использовать pará метры вместо консультаций diná слюда (из-за вопросов безопасности и предотвращать SQL Injection), тогда, если в твое решение SQL ты помещаешь один INSERT 10 pará метры дебет заявлять позже в SqlCommand. Это documentació n oficinal Microsoft относительно использования pará метры и có mo предотвращать SQL Injection msdn.microsoft.com/en-us/library/ff648339.aspx –  25.01.2017, 17:54
  • 3
    Спасибо я quedó má s просвет –  25.01.2017, 18:01
  • 4
    Превосходный вклад, вопрос, ¿ Có mo harí в это, но чтобы сохранять selecció n RadioButton? Принимая во внимание, что их несколько групп RadioButton. –  20.05.2017, 08:47
  • 5
    Идеальное serí в который ты бросил твои сомнения в новом вопросе, ты можешь основываться помещая как ссылка мой ответ, но сейчас для radiobutton –  20.05.2017, 19:07

Давайте исходить из основания, которое ты не должен прилагать стоимость в string распределять параметры, но ты должен перемещать их используя Parameters объекта command

string connstring = @"Data Source=(local);Initial   Catalog=Sistemaa;User ID=sa;Password=344";
using (SqlConnection conn = new SqlConnection("connection string")) 
{

    string sql = @"insert into Empleados (nombre, trabajo, sexo, edad) values (@nombre, @trabajo, @sexo, @edad)"; 

    SqlCommand cmd = new SqlCommand(sql, conn); 
    cmd.Parameters.AddWithValue("@nombre", txtnombre.text); 
    cmd.Parameters.AddWithValue("@trabajo", txttrabajo.text);
    //resto parametros

    cmd.ExecuteNonQuery(); 

}

если check - стоимость, которую ты нуждаешься в том, чтобы ввести, ты мог бы определять поля типа 'бит' тогда ты распределяешь параметры

cmd.Parameters.AddWithValue("@parambit", checkbox1.checked);
1
ответ дан 03.12.2019, 17:31

Я это сделал, как ты сказал мне - Леандро Туттини Тенго другое сомнение, их несколько check, как он упомянул, я должен добавлять все их в параметрах? так как в моей таблице у меня только есть колонна для того, чтобы там в высокой отборные check, не, если я объяснился

        SqlCommand cmd = new SqlCommand("insert into Empleados(nombre,trabajo,sexo,edad,)values(@nombre,@trabajo,@sexo,@edad)", conn);
        cmd.Parameters.AddWithValue("@nombre", txtnombre.Text);
        cmd.Parameters.AddWihValue("@trabajo", txttrabajo.Text);
        cmd.Parameters.AddWithValue("@sexo",checkbox1....); //Aqui no me da la opción de checked
         cmd.Parameters.AddWithValue("@edad",checkbox2...);
0
ответ дан 03.12.2019, 17:31