1. CREAR LA BASE DE DATOS Y LA TABLA EN SQL SERVER 2008
- Clic en nueva consulta y escribir el siguiente código y luego ejecutar
- Proyecto de Aplicacion Windows c#
- Para mostrar la imagen elegir el control PictureBox
3. ESCRIBIR EL CÓDIGO DEL BOTÓN EXAMINAR PARA QUE SE ABRA EL CUADRO DE SELECCIÓN DE LA IMAGEN Y SELECCIONEMOS LA IMAGEN DESEADA Y SE MUESTRE EN EL PICTURE BOX
- cuando ejecutamos se muestra de la siguiente manera
private void btnGuardar_Click(object sender, EventArgs e)
{
try
{
System.Data.SqlClient.SqlConnection conn = new System.Data.SqlClient.SqlConnection(@"Data Source=
(local);Initial Catalog=EJEMPLO;Integrated Security=SSPI");
System.Data.SqlClient.SqlCommand cmd = new System.Data.SqlClient.SqlCommand();
// Estableciento propiedades
cmd.Connection = conn;
cmd.CommandText = "INSERT INTO Productos VALUES (@Codigo, @Descripcion, @Cantidad, @precio, @foto)";
// Creando los parámetros necesarios
cmd.Parameters.Add("@Codigo", System.Data.SqlDbType.Int);
cmd.Parameters.Add("@Descripcion", System.Data.SqlDbType.NVarChar);
cmd.Parameters.Add("@Cantidad", System.Data.SqlDbType.Int);
cmd.Parameters.Add("@precio", System.Data.SqlDbType.SmallMoney);
cmd.Parameters.Add("@foto", System.Data.SqlDbType.Image);
// Asignando los valores a los atributos
cmd.Parameters["@Codigo"].Value = int.Parse(txtCodigo.Text);
cmd.Parameters["@Descripcion"].Value = txtDescripcion.Text;
cmd.Parameters["@Cantidad"].Value = int.Parse(txtCantidad.Text);
cmd.Parameters["@precio"].Value = float.Parse(txtPrecio.Text);
// Asignando el valor de la imagen
// Stream usado como buffer
System.IO.MemoryStream ms = new System.IO.MemoryStream();
// Se guarda la imagen en el buffer
picFoto.Image.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
// Se extraen los bytes del buffer para asignarlos como valor para el
// parámetro.
cmd.Parameters["@foto"].Value = ms.GetBuffer();
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
}
catch (System.Exception ex)
{
MessageBox.Show(ex.Message);
}
MessageBox.Show("Registro Guardado Correctamente");
}
}
}
5. EJECUTAMOS Y PROBAMOS
6. VERIFICAMOS EN LA BASE DE DATOS SI SE GUARDO EL REGISTRO
Como vemos el registro se guardo correctamente y en la columna Foto se guarda y valor de la ubicación en memoria de dicha imagen que se ha extraído sus bytes, para almacenarlos en un buffer que es finalmente en esta forma como se almacena en la BD.
Gracias
AMIGO ME DA UN ERROR DICE
ResponderEliminarEl nombre picFoto no existe en el contexto actual
sustitui picFoto por pictureBox1 y me corrio pero ahora luego que asigno la imagen y le doy click a btnGuardar me aparece
ResponderEliminar"La cadena de entrada no tiene un formato correto" Le doy ACEPTAR y luego aparece
"Registro Guardado Correctamen"
PERO NO LO GUARDA!
http://imageshack.us/photo/my-images/29/errorluegodeseleccionar.png/
AQUI EL CODIGO
http://chopapp.com/#lmsf2mca
HICE OTRO PROYECT EXACTAMENTE COMO ESTA EL CODIGO EJEMPLO Y AHOA AL DARLE GUARDAR DICE
ResponderEliminar"REFERECIA A OBJETO NO ESTABLECIDA COMO INSTANCIA A UN OBJETO"
AGRADECEIA AYUDA!
como se conecta con la base de datos...me sale que no encuentra en archivo....hay un error de ruta....
ResponderEliminarcomo lo hago...
solicito apoyo....
Faydel
Grasias amigo muy buen tutorial saludos
ResponderEliminarque pasa si no deseo agregar una imagen?? me botaria error cual seria el nuevo codigo al no querer insertar una imagen??
ResponderEliminarA mi tambien me aparece que "la cadena de entrada no tiene un formato correcto "...
ResponderEliminarSoy Manuel:
ResponderEliminarelabore un proyecto similar pero con una tabla hecha en sql2005 en mi maquina como ubicacion, creo las columnas y pongo lo mismo en la tabla que tu creaste, sin embargo a la hora de recoger el valor de la imagen me dice que el parametro no es correcto y no existe dentro de la tabla, porfavor ayuda
ESTA MUY BUENO ESTE TEMA PERO TE RECOMENDARIA QUE LO HAGAS EN ASP.NET COMO GUARDAR UNA IMAGEN FISICA EN UNA CARPETA DEL PROYECTO Y TAMBIEN CAMBIAR EL NOMBRE DE LA IMAGEN
ResponderEliminarMen Eres TODO un Cabronaso Te larifaste Al 100%
ResponderEliminarUNA CONSULTA! Y COMO HARIA SI DESEO MOSTRAR EL DATO GUARDADO EN LA BD?
ResponderEliminarESPERO SUS AYUDAS! GRACIAS..!
brother como se llama la rola que suena de fondo?
ResponderEliminarmuchas gracias amigo por tu buen aporte en este blog estubo algo sencillosolo necesite 4 lineas de tu codigo para poder hacerlo de nuevo gracias por tu aporte
ResponderEliminarBrother muchisimas gracias por tu ayuda, me encantaria mucho mas si nos pusieras los temas de REPORTING SERVICES y/o CRYSTAL REPORT
ResponderEliminarhola y como aria para eliminar
ResponderEliminar