Yo utilizo conexion RDO.Si te sirve, prueba.
1. Crea una conexion ODBC en tu PC, que apunte a la base de datos SQL que tu requieres.
2. En tu aplicacion, selecciona Proyecto->Referencias y marca la opcion Microsoft Remote Data Object 2.0
3. En un modulo .bas, pone las siguientes variables.
Global aConexion As rdoConnection
Global bConexion As rdoConnection
Global Resultado As rdoResultset
Global Respuesta As rdoResultset
Global Aenv As rdoEnvironment
Global Benv As rdoEnvironment
Global gDSN as string
Global gUID as string
Global gPWD as string
Globa gDataBase as string
Crea un procedimiento llamado Conectar:
Public Sub Conectar()
Set Aenv = rdoEnvironments(0)
Set Benv = rdoEnvironments(0)
Aenv.CursorDriver = rdUseOdbc
Benv.CursorDriver = rdUseOdbc
sConnect = "ODBC;DSN=" & gDSN & ";"
sConnect = sConnect & "UID=" & gUID & ";"
sConnect = sConnect & "PWD=" & gPWD & ";"
sConnect = sConnect & "DATABASE=;" & gDataBase
Set aConexion = Aenv.OpenConnection(sConnect)
Set bConexion = Benv.OpenConnection(sConnect)
End Sub
Crea un procedimiento llamado Desconectar:
Public Sub Desconectar()
aConexion.Close
bConexion.Close
End Sub
En el load del form principal, coloca el siguiente codigo:
Sub Form_Load()
gDSN="MiConexion"
gUID=""MiUID"
gPWD="MiPassword"
gDataBase="MiBaseDatos"
Call conectar()
End Sub
En un boton command, agrega:
Private Sub Command1_Click()
Tabla="EMPLEADOS" 'Nombre de una tabla de la base de datos
Sentenciasql="select * from " & Tabla
Set Respuesta = aConexion.OpenResultset(SentenciaSQL)
while not respuesta.eof
print respuesta!codigo_empleado
print respuesta!nombre_empleado
respuesta.movenext
wend
End Sub
En otro boton command, agrega:
Private Sub Command2_Click()
call desconectar()
En Sub
Cualquier cosa, enviame un emilio y te respondo si te puedo ayudar.