Como enlazar columnas de una tabla SQL a unos ‘TextBox’

‘ En respuesta a la pregunta de como añadir o modificar registros

‘ a una tabla de SQL con bindings sin DGV y al viejo estilo ADO.

‘ Utilizaremos solo las columnas de Nombre y Telefono de la tabla ‘Shippers’

‘ Despues de insertar un nuevo registro, deberemos utilizar el boton

‘ de actualizar para que dichos cambios sean actualizados a la BD.

‘ En caso de modificacion solo necesitaremos llamar a la ‘actualizacion’

 

Imports System.Data

Imports System.Data.SqlClient

 

Public Class Form1

   

    ‘Constructores para el acceso a la tabla ‘Shippers’ y su correspondiente BindingSource

    Private MiConexion As New SqlConnection( _

               «Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Temp\Northwind\NORTHWND.MDF» + _

               «;Integrated Security=True;Connect Timeout=30;User Instance=True»)

 

    Private MiDataSet As New DataSet()

    Private MiAdaptador As New SqlDataAdapter(«SELECT * FROM Shippers», MiConexion)

    Private MiEnlazador As New BindingSource

 

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

       

        ‘ Panel conteniendo los textbox para la entrada/modificacion

        Dim Nombre As New TextBox

        Dim Telefono As New TextBox

 

        Dim marcoDatos = New FlowLayoutPanel

        marcoDatos.Dock = DockStyle.Top

        marcoDatos.Controls.AddRange(New Control() {Nombre, Telefono})

        Me.Controls.AddRange(New Control() {marcoDatos})

 

       

        ‘ Panel conteniendo los botones de control

        Dim Avanza As New Button

        Dim Retrocede As New Button

        Dim Insertar As New Button

        Dim Actualizar As New Button

        Dim Controles As New FlowLayoutPanel

        Controles.Dock = DockStyle.Bottom

        Retrocede.Text = «<- Re»

        Avanza.Text = «Av ->»

        Insertar.Text = «Insertar»

        Actualizar.Text = «Actualizar»

        Controles.Controls.AddRange(New Control() {Retrocede, Avanza, Insertar, Actualizar})

        Me.Controls.AddRange(New Control() {Controles})

       

        ‘ Asignar el evento a las funciones de cada boton de control

        AddHandler Retrocede.Click, AddressOf retroceder

        AddHandler Avanza.Click, AddressOf Avanzar

        AddHandler Insertar.Click, AddressOf Nuevo

        AddHandler Actualizar.Click, AddressOf Actualizacion

       

        ‘ Conexion, relleno y asignacion del enlace a datos

        MiConexion.Open()

        MiAdaptador.Fill(MiDataSet)

        MiEnlazador.DataSource = MiDataSet.Tables(0)

        Dim Micommandbuilder As New SqlCommandBuilder(Me.MiAdaptador)

       

        ‘ Enlace de los TextBox a sus omologos en la tabla

        Dim EnlaceNombre As New Binding(«Text», MiEnlazador, «CompanyName»)

        Nombre.DataBindings.Add(EnlaceNombre)

        Dim EnlaceDireccion As New Binding(«Text», MiEnlazador, «Phone»)

        Telefono.DataBindings.Add(EnlaceDireccion)

    End Sub

    ‘ Avanzar un registro dentro del ‘recordset’ 🙂

    Sub Avanzar()

        MiEnlazador.MoveNext()

    End Sub

    ‘ Retroceder un registro

    Sub retroceder()

        MiEnlazador.MovePrevious()

    End Sub

    ‘Crear un nuevo registro

    Sub Nuevo()

        MiEnlazador.AddNew()

    End Sub

    ‘ Actualizar el registro en curso o el recien creado

    Sub Actualizacion()

        MiEnlazador.EndEdit()

        MiAdaptador.Update(CType(Me.MiEnlazador.DataSource, DataTable))

    End Sub

End Class

Saludos,
Pep Lluis,

7 pensamientos en “Como enlazar columnas de una tabla SQL a unos ‘TextBox’”

  1. buenas…tengo un pequeño problema…quiero enlazar una tabla a un formulario…pero con textbox y 2 combobox en visual foxpro9…el problema es como le hago para que aparescan las columnas en su determinado cuadro de text…mui agradecido de antemano por la respuesta….roman

  2. Hola Roman,

    La verdad es que no he desarrollado nunca una aplicacion utilizando Fox, sin embargo por tu pregunta creo que deberias intentar utilizar ‘bindings’ en todo caso para poder tener una comunicacion mas fluida y ver si algun compañero puede ayudarte, contacta a utilizando la opcion de [contact].

    Espero tus noticias,
    Pep Lluis,

  3. hola requiero tu ayuda urgente espero puedan ayudarme.logre enlazar un textbox con una tabla de mi base, pero necesito que lo q se muestra en el textbox cambie segun la seleccion de un comboBox. la informacion que debe mostrarse es la de la tabla a la que se enlazo el textBox. espero puedan orientarme gracias

  4. hola bueno mira yo tengo una duda, tengo que conectar un textbox cn un access, porque aun no puedo trabajar con sql no me podrias dar una mano?

    graxx

  5. Hola buenos Noches!
    Les estaré agradecioco si me ayudan a corrergir mi codigo.
    para iniciar les comento que soy novato en programación de Visual Basic 2008 y Sql2005.

    necesio saber como envió un valor de una consulta a un texbox.

    ahi les dejo mi codigo

    Private Sub Button1_Click

    Dim da As New SqlDataAdapter(«SELECT nombre,usuario,clave FROM dbo_usuarios where usuario = ‘» & (Txtusuario.Text) & «‘», conex)
    (ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

    DataAdapter.Fill(Dataset, «usuarios»)

    Txtnombre.DataBindings.Add(«text», Dataset, «Nombre»)

    gracias

Responder a Japanese Automotive Cumming Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *