Google Búsqueda personalizada

Regístrate gratis para participar de los foros, o si ya estás registrado haz login.

Visual basic 6.0 porfavor ADODB

comentario del autor Vie Abr 08, 2005 4:39 pm
   
hola a todos
creo que no me entendiero la pregunta anterior que hice de visual basic 6.0

lo que quiero poder aprender
a utlizar el acceso de datos activex el connection
recorset
command
parameters
a programar con estructura clientes-servidor
DE visual basic 6.0 y sqlserver 7.0 con procedimientos almacenados

nota: tengo conocimiento de estos 2 lenguajes de programacion
pero quiero aprender a programar de manera mas simple
si escribir tanto codigo
(si tienen ejemplos resuelto y con codigo seria mejor para poder aplicarlo)
gracias por su ayuda

chesino

Reputación

asistió a la solución Vie Abr 08, 2005 5:40 pm
   
Hola, te paso como lo implente yo. Quizas no es la forma PERFECTA, pero gralmente se hace asi:
Const SERVER as string = "TUSERVER"
Const BD as string = "TUBD"

Function Conectar(user As String, pass As String) As Boolean
'Solamente conecta con user y pass, controla el logueo
On Error GoTo errores
Set prueba = New ADODB.Connection
With prueba
.Provider = "SQLOLEDB" 'Proveedor SQL Server
.ConnectionString = "User ID=" + user + ";password=" + pass + _
";Data Source=" + SERVER + ";Initial Catalog=" + BD
.Open
End With
Conectar = True
Exit Function
errores:
'LISTA DE ERRORES
MsgBox(Err.number & " " & Err.description)
End
End Function

Acordate de antes de cerrar el programa hacer un prueba.close para cerrar la conexion al server.

Esta funcion la metes en un modulo y la llamás de donde quieras. Devuleve True o False acorde si conecta o no (si queres eso lo podes anular) Tambien si queres podes implementar un mejor control de errores, acorde a los numeros y demas.

Una vez establecida la conexion, trabajas con los recordsets para poder acceder a los registros, yo te doy un ejemplo que busca que el apellido en la base de datos coincida con el contenido de Text1 y lo mete en List1:

'Codigo va en un boton, en click a un listbox, depende donde quieras q muestre.

Dim busca as ADODB.Recordset
Set busca = New Recordset 'Creas el recordset
'Aca con el open ejecutas la consulta que quieras a la BD, le pasas como parametro la sentencia SQL, la conexion q abriste antes (prueba) y ese adopenstatic q no se q es, pero va
busca.Open "SELECT nombre,apellido FROM tabla WHERE apellido LIKE '" + _
Text1.Text + "%'", prueba, adOpenStatic
Select Case busca.RecordCount
Case 0
'MsgBox ("Dicho apellido no existe en la base de datos")
Case Is >= 1
Do While Not busca.EOF And Not busca.BOF
List1.AddItem (RTrim(busca.Fields("apellido")) + ", " + RTrim(busca.Fields("nombre")))
busca.MoveNext
Loop
busca.close

'El Rtrim te saca todos los blancos a la derecha, en el caso de que el campo sea de 10 y el apellido tenga 6 caracteres
'busca.fields("apellido") es lo mismo q poner busca!apellido por lo cual esto tambien funcionaria:

List1.AddItem (RTrim(busca!apellido) + ", " + RTrim(busca!nombre))

Bueno, eso es todo, espero te sirva. Saludos

fortinero87

Reputación



Hacer una pregunta

Boletín de Noticias

Reciba noticias de tecnología, tips de reparación y ofertas exclusivas.



Reglamento / P+F

Foros

Miembros / Expertos