Ejemplo (este en concreto con VB2012 y base de datos access) donde se tiene un form en el cual aparecen cuatro botones: buscar, modificar, actualizar y volver. Además aparecen tres textBox: cédula, nombre y apellido. Inicialmente los botones modificar y actualizar tienen la propiedad enabled = false (ya que no hay datos para modificar ni actualizar).
Hay dos formularios: el form de inicio (frmInicio) y el form para buscar y modificar datos (frmActualizar) que permite buscar, modificar, actualizar y volver al form de inicio. El botón modificar lo que hace es permitir la edición en los TextBox donde se visualizan los resultados. El botón actualizar lo que hace es escribir en la base de datos los campos con los valores editados. El botón buscar busca un registro según los datos introducidos y el botón volver vuelve desde el frmActualizar al frmInicio.
Imports System.Data.OleDb
Public Class frmActualizar
Dim conexion as New OleDb.OleDbConnection 'Representa una conexión abierta a un origen de datos
Dim comandos as New OleDb.OleDbCommand 'Representa una instrucción sql o un procedimiento almacenado que se va a ejecutar en un origen de datos
Dim adaptador as New OleDb.OleDbDataAdapter
Dim registro as New DataSet
Try
conexion.ConnectionString = ("Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" & "C:\Users\Admin\Documents\datos.accdb") 'Entre comillas está la cadena de conexión, tenemos que consultarla en el entorno de desarrollo
conexion.Open()
MsgBox ("Conexión correcta", vbInformation, "Conectado")
Catch ex As Exception
MsgBox ("Ha ocurrido un error al intentar conectarse con la base de datos", vbInformation, "Error")
End Try
'Continúa
Ejemplo de botón buscar
Dim consulta As String
Dim lista As Byte
If txtCedula.Text <> "" Then
consulta = "SELECT * FROM clientes_restaurante WHERE cedula = " & txtCedula.Text & ""
adapatador = New OleDb.OleDBDataAdapater (consulta, conexion)
registro = New DataSet
adaptador.Fill(registro, "clientes_restaurante")
lista = registro.Tables("clientes_restaurante").Rows.Count
End If
If lista <>0 Then
'Cargar los datos encontrados donde corresponda
txtCedula.Text = registro.Tables("clientes_restaurante").Rows(0).Item("cedula")
txtNombre.Text = registro.Tables("clientes_restaurante").Rows(0).Item("nombre")
txtApellido.Text = registro.Tables("clientes_restaurante").Rows(0).Item("apellido")
cmdModificar.Enabled = True
cmdActualizar.Enabled = True
Activar los campos para permitir la escritura
txtCedula.Enabled = True
txtNombre.Enabled = True
txtApellido.Enabled = True
Ejemplo de botón actualizar
Dim consulta_actualizar As String
Try
consulta_actualizar = "UPDATE clientes_restaurante SET cedula = '" &txtCedula.Text & "', nombre = '" & txtNombre.Text & "', apellido = '" & txtApellido.Text & " "
comandos = New OleDb.OleDbCommand (consulta_actualizar, conexion)
comandos.ExecuteNonQuery()
MsgBox ("El registro se ha actualizado", vbInformation, "Actualizado")
'Limpiar los campos
txtCedula.Clear()
txtNombre.Clear()
txtApellido.Clear()
'Desactivar campos y botones
txtNombre.Enabled = False
txtNombre.Enabled = False
txtApellido.Enabled = False
cmdModificar.Enabled = False
cmdActualizar.Enabled = False
Catch ex As Exception
MsgBox ("Ha ocurrido un error al intentar actualizar el registro", vbExclamation, "Error")
End Try
Botón Volver para cerrar el form de inicio
conexion.Close() 'Cerrar la conexión
frmInicio.Show() ' Mostrar formulario inicial
Me.Close() 'Cerrar el formulario