none
insertar imagen A DB sql server RRS feed

  • Pregunta

  • hola mi nombre es fabian soy nuevo en la programación de vb.net,  tengo un formulario donde ingreso datos de personas y tengo dentro del mismo un pictureBox donde tengo dos botones.   uno busca la imagen de la persona en mi pc y otro que la guarda 

    lo que necesitaria es como hago para que una vez colocada la imagen en el pictureBox haciendo clic en el botón guardar se guarde en la tabla de una db sql server 2012

    este es el botón buscar 

    Private Sub btnbuscar_foto_Click_1(sender As Object, e As EventArgs) Handles btn_buscarfoto.Click
            Dim dialog As New OpenFileDialog
            dialog.Filter = "(Image Files)|*.jpg;*.png;"
            dialog.ShowDialog()
            imagen.Image = Image.FromFile(dialog.FileName)
        End Sub

    cuando ejecuto el formulario ya se conecta a la base de datos (tengo una class donde se conecta a a db)

    y la tabla donde colocaría la imagen es dbo.personal (columna per_foto)

    y por último tengo otro formulario donde consulto los datos de las personas ingresadas lo que necesitaria es que cuando traigo los datos de la tabla personal también traiga la imagen y la coloque en el picturebox que tengo en dicho formulario 

    desde YA muchisimas gracias esperando tu respuesta



    • Editado fabian1212 jueves, 25 de agosto de 2016 18:06
    jueves, 25 de agosto de 2016 18:04

Respuestas

Todas las respuestas

  • hola

    que tipo de desarrollo estas realizando ? es web o desktop

    porque en asp.net no existe ningun PictureBox

    aqui

    [WinForms] Edición Empleados

    explico como persistir una imagen en un campo de la db

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina


    jueves, 25 de agosto de 2016 18:26
  • Vayamos por partes: Presumo que ya sabes guardar en la base de datos información normal tal como strings o integers. Pues bien, si la columna que usas para la foto es de tipo varbinary en la tabla, entonces desde el punto de vista del programa se ve como un array de bytes. Así que lo que tienes que hacer es guardar y leer el array de bytes de la misma manera que normalmente guardas y lees strings (que puede ser de muchas formas, no has dicho cuál es la que estás usando). Lo único que falta es convertir el Image en array de bytes. Esto se puede conseguir llamando al método Save de la imagen y salvándola sobe un MemoryStream, y luego llamas al método ToArray del memorystream para que te entregue el array de bytes que se graba en la BD.
    jueves, 25 de agosto de 2016 18:27
  • hola estoy desarrolando en vb.net   no web 

    jueves, 25 de agosto de 2016 18:36
  • la columna que esu para guardar la foto es image 

    el formulario de consulta tiene un datagridview donde trae la información de la tabla,  cuando selecciono una fila y hago click los datos se colocan en los diferentes textbox solo faltaria que en el picturebox aparezca la foto ya insertada anteriormente

    podrias escribirme un código para realizar la acción de insertar y la de traer la foto juntamente con los datos cuando hago la consulta  

    desde ya muchisimas gracias

    jueves, 25 de agosto de 2016 18:44
  • estoy desarrollando en desktop

    jueves, 25 de agosto de 2016 18:48
  • hola

    >>podrias escribirme un código para realizar la acción de insertar

    lo explico en el articulo que sugiero, lo pudiste analizar

    veras que usando ado.net debes asignar el parametro como byte array

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    jueves, 25 de agosto de 2016 19:00
  • hola mi nombre es fabian soy nuevo en la programación de vb.net,  tengo un formulario donde ingreso datos de personas y tengo dentro del mismo un pictureBox donde tengo dos botones.   uno busca la imagen de la persona en mi pc y otro que la guarda 

    lo que necesitaria es como hago para que una vez colocada la imagen en el pictureBox haciendo clic en el botón guardar se guarde en la tabla de una db sql server 2012

    este es el botón buscar 

    Private Sub btnbuscar_foto_Click_1(sender As Object, e As EventArgs) Handles btn_buscarfoto.Click
            Dim dialog As New OpenFileDialog
            dialog.Filter = "(Image Files)|*.jpg;*.png;"
            dialog.ShowDialog()
            imagen.Image = Image.FromFile(dialog.FileName)
        End Sub

    cuando ejecuto el formulario ya se conecta a la base de datos (tengo una class donde se conecta a a db)

    y la tabla donde colocaría la imagen es dbo.personal (columna per_foto) (image)

    y por último tengo otro formulario donde consulto los datos de las personas ingresadas lo que necesitaria es que cuando traigo los datos de la tabla personal también traiga la imagen y la coloque en el picturebox que tengo en dicho formulario 

    desde YA muchisimas gracias esperando tu respuesta

    jueves, 25 de agosto de 2016 19:46
  • fabian1212,

    Tienes la misma pregunta duplicada en el foro: insertar imagen A DB sql server. No es correcto, si no obtienes las respuestas que esperas debes de insistir sobre el mismo hilo no aperturar uno. Veo que Leandro te propuso un enlace donde explica claramente los pasos a seguir para guardar y leer un archivo de imagen, ¿lo has revisado? ¿qué problemas has tenido?


    Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.
    jueves, 25 de agosto de 2016 20:01
  • HOLA BUEN DIA WILLAMS NO ERA MI INTENCIÓN SER INCORRECTO  SOY NUEVO EN ESTO DE LA PROGRAMACIÓN, CON RESPECTO A LA IMAGEN MI SE CONECTA A UNA BASE DE DATOS NI BIEN LO EJECUTO CON RESPECTO A LA IMAGEN TAMBIÉN SE DEBE CONECTAR A LA BASE DE DATOS ? O YA CUANDO EL FORMULARIO QUE CONTIENE EL PICTUREBOX SE CONECTA EL MISMO TAMBIÉN LO HACE ???, O HAY QUE PROGRAMAR UN BOTON PARA QUE SE CONECTA A LA DB ?  

    DISCULPA SOY NUEVO EN ES MUCHAS GRACIAS

     

    viernes, 26 de agosto de 2016 10:58