Ver Mensaje Individual
  #1 (permalink)  
Antiguo 14/05/2011, 05:38
0greco0
 
Fecha de Ingreso: mayo-2011
Mensajes: 32
Antigüedad: 13 años
Puntos: 1
guardar imagen en sql

primero kiero saber que me sale mejor si guardar las imagenes en la base de datos o en el disco duro estoy haciendo un programa con un opendialog eligo que imagen ira en el backgroundimage del picturebox al iniciar ya tiene una imagen si mando a guardar esa imagen ala base de datos no hay problema pero si la cambio me da un error al kererla guardar

este es el codigo que uso para codificar la imagen

public byte[] codificar(PictureBox p)
{
MemoryStream stream = new MemoryStream();
p.BackgroundImage.Save(stream, System.Drawing.Imaging.ImageFormat.Jpeg);
byte[] pic = stream.ToArray();

return pic;
}


y para guardarla

Conexion.Open();
SqlCommand Comand = Conexion.CreateCommand();
Comand.CommandText = "use programa insert into usuario(nclave,nusuario,edad,estatura,peso,sexo,av atar)values(" + nclave + "," + nombre + "," + edad + "," + estatura + "," + peso + ",'" + c + "',@pic)";
Comand.Parameters.AddWithValue("@pic", pic);
Comand.ExecuteNonQuery();

Conexion.Close();

por cierto este codigo lo copie de internet y algo que no se si me puedan explicar ya que no solo kiero que corra el programa quiero saber pork y saber que estoy haciendo lo que no entiendo es esto comand.Parameters.AddWithValue("@pic", pic);
pork no se pone solo la variable pic en vez de poner la linea anterior y poner @pic