Hola comunidad, tengo este pequeno programa de ejemplo con base de datos (SQLite3), el problema es a la hora de hacer el Update no se actualiza la DB, tengo que cerrar la aplicacion y volverla a abrir para que se actualicen. Me podiran decir que le falta. El codigo de actualzar esta en el boton Menu3_click.
Les dejo el codigo.
Saludos.
Código:
' Gambas class file
Private conexion As Connection
Private TablaContactos As Result
Public Sub Form_Open()
conexion = New Connection
conexion.Type = "sqlite3"
conexion.Host = "/home/dario/gambas/PruebaBaseDatos/"
conexion.Name = "base"
Try conexion.Open()
If Error Then
Message.Error("Error al conectar a la base de datos")
conexion = Null
Else
TablaContactos = conexion.Exec("Select * From contactos")
If TablaContactos.Available Then MostrarCampos
Endif
End
Public Sub MostrarCampos()
txtID.Text = TablaContactos["id"]
txtNombre.Text = TablaContactos["Nombre"]
txtApellido.Text = TablaContactos["Apellido"]
txtTelefono.Text = TablaContactos["Telefono"]
txtMail.Text = TablaContactos["Mail"]
txtNacimiento.Text = TablaContactos["FechaNacimiento"]
End
Public Sub btnPrimero_Click()
TablaContactos.MoveFirst()
MostrarCampos
End
Public Sub btnAnterior_Click()
TablaContactos.MovePrevious()
If Not TablaContactos.Available Then TablaContactos.MoveFirst()
MostrarCampos
End
Public Sub btnSiguiente_Click()
TablaContactos.MoveNext()
If Not TablaContactos.Available Then TablaContactos.MoveLast()
MostrarCampos
End
Public Sub btnUltimo_Click()
TablaContactos.MoveLast()
MostrarCampos
End
Public Sub Menu2_Click()
btnGuardar.Visible = True
btnCancelar.Visible = True
btnPrimero.Visible = False
btnAnterior.Visible = False
btnSiguiente.Visible = False
btnUltimo.Visible = False
txtID.Text = ""
txtNombre.Text = ""
txtApellido.Text = ""
txtTelefono.Text = ""
txtMail.Text = ""
txtNacimiento.Text = ""
End
Public Sub btnGuardar_Click()
Dim VarResult As Result
VarResult = conexion.Create("Contactos")
conexion.Exec("insert into contactos values(&1,&2,&3,&4,&5,&6)",
txtID.Text, txtNombre.text, txtApellido.Text, txtTelefono.Text, txtMail.text, txtNacimiento.text)
'VarResult = Conexion.Create("Contactos")
'VarResult["id"] = txtID.Text
'VarResult["Nombre"] = txtNombre.Text
'VarResult["Apellido"] = txtapellido.Text
'VarResult["FechaNacimiento"] = txtNacimiento.Text
'VarResult["Telefono"] = txtTelefono.Text
'VarResult["Mail"] = txtMail.Text
VarResult.Update
TablaContactos = Conexion.Exec("Select * from Contactos")
btnGuardar.Visible = False
btnCancelar.Visible = False
btnPrimero.Visible = True
btnAnterior.Visible = True
btnSiguiente.Visible = True
btnUltimo.Visible = True
End
Public Sub btnCancelar_Click()
btnGuardar.Visible = False
btnCancelar.Visible = False
btnPrimero.Visible = True
btnAnterior.Visible = True
btnSiguiente.Visible = True
btnUltimo.Visible = True
MostrarCampos
End
Public Sub Menu3_Click()
Dim VarResult As Result
'VarResult = Conexion.Edit("Contactos", "id=" & TablaContactos["id"])
'VarResult["id"] = txtID.text
'VarResult["Nombre"] = txtNombre.text
'VarResult["Apellido"] = txtapellido.text
'VarResult["FechaNacimiento"] = txtNacimiento.text
'VarResult["Telefono"] = txtTelefono.text
'VarResult["Mail"] = txtMail.text
'VarResult.Update
'TablaContactos = Conexion.Exec("Select * from Contactos")
conexion.Exec("update contactos set nombre ='" & txtNombre.Text & "' where id ='" & txtID.Text & "';")
End
Public Sub Menu5_Click()
Me.Close
End
Public Sub Form_Close()
If Message.Question("¿Desea salir del programa?", "Si", "No") = 2 Then
Stop Event
Else
Conexion.Close
End If
End