Foros del Web » Programación para mayores de 30 ;) » .NET »

Almacenar valor de un radio button en BD en campo tipo si/no

Estas en el tema de Almacenar valor de un radio button en BD en campo tipo si/no en el foro de .NET en Foros del Web. Hola foro!! Tengo una base de datos en la que tengo un campo que se llama "correcto" y es de tipo si/no. Vale,ahora tengo un ...
  #1 (permalink)  
Antiguo 12/05/2005, 05:31
 
Fecha de Ingreso: febrero-2005
Mensajes: 31
Antigüedad: 19 años, 2 meses
Puntos: 0
Pregunta Almacenar valor de un radio button en BD en campo tipo si/no

Hola foro!!

Tengo una base de datos en la que tengo un campo que se llama "correcto" y es de tipo si/no.
Vale,ahora tengo un formulario que tiene 2 radio buttons uno te indica que es verdadera y el otro te indica que es falsa.
Vale,entonces como puedo insertar ese valor del radio button en ese campo de tipo si/no.

A la hora de almacenar los 3 campos que tiene la tabla preg_tiene_resp son:
1er valor)Es un codigo seleccionado de un dropdownlist
2o valor) Es un codigo seleccionado de otro dropdownlist
3er valor) Es el valor de uno de los 2 radio buttons en un campo de si/no


Gracias y espero haberme explicado un poco bien sino en lo que sea lo vuelvo a explicar por si no lo entendeis.

Compilo y no da errores pero a la hora de ejecutar me sale el siguiente error:
OleDbParameterCollection no contiene OleDbParameter con ParameterName '@valor'.

Aqui pongo algo que he hecho pero que da error:

//Tengo declaradas estas variables al principio del codigo

private string valor1;
private string valor2;
private bool aux=false;
private string valor;

//ESTE BOTON ME INDICA CUAL HA SIDO EL VALOR SELECCIONADO

private void Button2_Click(object sender, System.EventArgs e)
{

if(this.Radio1.Checked==true)
{
this.aux=true;
this.ViewState["valor"]=aux;
Response.Write("true");
}
else if (this.Radio2.Checked==true)
{
this.aux=true;
this.ViewState["valor"]=aux;
Response.Write("false");
}

//Y ESTE BOTON ES EL QUE ME SUBE TODA LA INFORMACION A LA BD

private void Button1_Click(object sender, System.EventArgs e)
{

string sqlquery = "INSERT INTO Preg_tiene_respu(cod_pregunta,cod_respuesta,correc ta) VALUES (@valor1,@valor2,@valor)";

//Ruta donde esta la BD para que se conecte con ella
string ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\Inetpub\\wwwroot\\proyecto\\bd.mdb";
//Establece la conexión
OleDbConnection con = new OleDbConnection(ConnectionString);

OleDbCommand cmd = new OleDbCommand(sqlquery,con);

{
//Coleccion de parametros
OleDbParameterCollection pms = cmd.Parameters;

this.valor1=this.pregunta.SelectedValue.ToString() ;
this.ViewState["valor1"]=valor1;
pms.Add("@valor1", OleDbType.Integer, 10);

this.valor2=this.respuesta.SelectedValue.ToString( );
ViewState["valor2"]=valor2;
pms.Add("@valor2", OleDbType.Integer,10);
pms.Add(@valor,OleDbType.VarChar);

pms["@valor1"].Value= this.ViewState["valor1"];
pms["@valor2"].Value= this.ViewState["valor2"];
pms["@valor"].Value= this.ViewState["valor"];


con.Open();
cmd.ExecuteNonQuery();
this.Literal1.Visible = false;
this.Literal2.Visible = true;
con.Close();
  #2 (permalink)  
Antiguo 12/05/2005, 10:12
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Podría quedarte asi:
Cita:
pms.Add("@valor2", OleDbType.Integer,10);
pms.Add(@valor,OleDbType.Boolean);

pms["@valor1"].Value= this.ViewState["valor1"];
pms["@valor2"].Value= this.ViewState["valor2"];
pms["@valor"].Value= (bool) this.ViewState["valor"];
Salu2
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #3 (permalink)  
Antiguo 13/05/2005, 02:26
 
Fecha de Ingreso: febrero-2005
Mensajes: 31
Antigüedad: 19 años, 2 meses
Puntos: 0
Gracias!!

Era justo eso.Ayer estaba peleando con lo de las conversiones y no sabia exactamente como era.Solo me falto el ultimo bool que les has asignado tu.

Muchas gracias.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:11.