Wenas, ya llevo tiempo programando en .net y ahora me he pasado a la
version 2005. Weno, el caso es que he tenido bastantes problemas con la
nueva version porque no era capaz de actualizar valores de una base de
datos Access, y lo peor es que no me da ninguna excepcion ni nada. Me
esplico, yo me conecto a una base de datos, la cargo y la vuelco sobre
un datagrid, ahora cambio los valores en el datagrid, y le doy a un
boton q lo q hace es actualizar los valores, hasta ahora todo bien, el
caso es que he cambiado el boton de actualizar por un boton en la barra
de accesos directos y ya no actualiza nada, se ejecuta el mismo codigo q
se ejecutaba dandole a boton normal pero en este caso no actualiza, y
con el otro si. Pero yo necesito q se actualiza desde la barra y no hay
forma. Lo peor es que no lanza excepcion ni nada, simplemente se ejecuta
y no actualiza.
Si quereis comprobarlo facilmente creais un nuevo formulario y poneis un
DataGridView q se pueda editar, un boton y una barra(ToolStrip) con un
boton (ToolStripButton), weno, y una base de datos access (c:\aaa.mbd)
con una tabla llamada pepe, hora pegais este codigo:
Imports System.Data
Imports System.Data.OleDb
Imports System.io
Public Class Form1
Private conexionBD As OleDbConnection
Private adapterBD As OleDbDataAdapter
Private dataSetBD As DataSet
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
conexionBD = New OleDbConnection
("Provider=Microsoft.Jet.OLEDB.4.0; Data Source= c:\aaa.mdb")
conexionBD.Open()
adapterBD = New OleDbDataAdapter("SELECT * FROM pepe",
conexionBD)
Dim commandBuilderBD As New OleDbCommandBuilder(adapterBD)
dataSetBD = New DataSet
adapterBD.Fill(dataSetBD, "Pepe")
conexionBD.Close()
DataGridView1.DataSource = dataSetBD.Tables(0)
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
adapterBD.Update(dataSetBD, "pepe")
End Sub
Private Sub ToolStripButton1_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles ToolStripButton1.Click
adapterBD.Update(dataSetBD, "pepe")
End Sub
End Class
Si lo ejecutais y empezais a cambiar los valores del datagrid, vereis q
dandole a un boton si guarda los cambios, y con el otro no. ¿Porque
sera?, weno, espero q me podais ayudar, yo ya no se que hacer porque lo
he intentado de mil formas, desde lanzando eventos a ponerlo todo
shared, pero no hay forma.
Saludos y gracias
Leer las respuestas