‘ 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,
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
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,
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
yoo. funny thread ))
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
Aqui tienes un ejemplo:
http://msmvps.com/blogs/peplluis/archive/2006/10/16/Introducir-datos-desde-un-textbox-a-una-base-access-en-vb.net.aspx
Saludos,
PepLluis,
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