none
Problema al actualizar los datos de una tabla RRS feed

  • Pregunta

  • Hola, estoy haciendo una sencilla aplicación en C# la cual se conecta a una base de datos sql server que contiene una tabla. La conexion se realiza correctamente a traves del asistente, luego arrastro la tabla a un formulario y me genera los controles DataGridView y BindingNavigator sin problemas. Cuando corro la aplicacion me muestra los datos que ya existian previamente en la tabla, pero al insertar un nuevo registro y dar click en el boton guardar no se graban los cambios, porque al terminar de ejecutar la aplicacion y volverla a correr no aparecen los datos guardados anteriormente.Tambien probe hacer la misma operacion con una base de datos Acces y pasa lo mismo. Tengo un equipo con Windows Xp SP3 y Visual Studio 2005.
    ¿Por qué ocurre esto?
     
    martes, 23 de febrero de 2010 15:54

Respuestas

  • Muchas gracias por responder, despues de un rato me di cuenta que si estaba guardando los datos en la tabla, el problema estaba en que la propiedad Copiar en el directorio de resultados estaba puesta a: copiar siempre, entonces solo la cambie a no copiar para que cada vez que inicara la aplicacion no reemplazara la base de datos original por la que ya tenia hecha algunos cambios. De todas formas que bueno que me pasas la información para aprender hacerlo manualmente, era otra cosa que quería aprender.
    Saludos
    • Marcado como respuesta fernaog martes, 23 de febrero de 2010 19:27
    martes, 23 de febrero de 2010 19:24

Todas las respuestas

  • hola

    veo que haces todo por medio de los asistentes del Visual Studio, o sea la idea es programar lo menos posible

    mira estos links

    Cómo: Agregar los botones Cargar, Guardar y Cancelar al control BindingNavigator de formularios Windows Forms

    como veras en el evento de de save deberias indicar que se debe guardar los datos del dataset

    TableAdapterName.Update(DataSetName.TableName)



    Tutorial: Guardar datos en una base de datos (Tabla única)

    en el punto 1 de este link veras que menciona el evento bindingNavigatorSaveItem_Click.
    alli deberias poner

    Try
        Me.Validate()
        Me.CustomersBindingSource.EndEdit()
        Me.CustomersTableAdapter.Update(Me.NorthwindDataSet.Customers)
        MsgBox("Update successful")

    Catch ex As Exception
        MsgBox("Update failed")
    End Try

    estas oepracion no son automaticas deberas agregarlas manualmente

    saludos
    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    martes, 23 de febrero de 2010 18:34
  • Muchas gracias por responder, despues de un rato me di cuenta que si estaba guardando los datos en la tabla, el problema estaba en que la propiedad Copiar en el directorio de resultados estaba puesta a: copiar siempre, entonces solo la cambie a no copiar para que cada vez que inicara la aplicacion no reemplazara la base de datos original por la que ya tenia hecha algunos cambios. De todas formas que bueno que me pasas la información para aprender hacerlo manualmente, era otra cosa que quería aprender.
    Saludos
    • Marcado como respuesta fernaog martes, 23 de febrero de 2010 19:27
    martes, 23 de febrero de 2010 19:24