Esta es una consulta sencilla:
Código vb:
Ver originalPrivate Sub cmdConsulta_Click()
Dim CONEX As ADODB.Connection
Dim REC As ADODB.Recordset
Set CONEX = New ADODB.Connection
Set REC = New ADODB.Recordset
CONEX.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" _
& "Data Source=C:\Program Files\Microsoft Office\OFFICE11\SAMPLES\Neptuno.mdb;" _
& "Persist Security Info=False"
CONEX.Open
REC.Source = "SELECT * FROM CLIENTES WHERE CIUDAD='Londres'"
REC.Open , CONEX, adOpenDynamic, adLockReadOnly
If REC.EOF = False Then
txtCiudad.Text = REC!CIUDAD
Else
MsgBox "NO HAY DATOS!!", vbYesNo
End If
If CONEX.State = 1 Then CONEX.Close
If REC.State = 1 Then REC.Close
Set CONEX = Nothing
Set REC = Nothing
End Sub
Compara con la tuya, especialmente en la linea:
Código vb:
Ver originalREC.Open , CONEX, adOpenDynamic, adLockReadOnly
Esta informacion te puede ayudar:
La navegacion del cursor en el recordset:
• adOpenForwardOnly - el cursor se mueve hacia delante solamente en el recordset
• adOpenKeyset - el cursor se mueve hacia delante y atras en el recordset. permite actualizar el recordset y los cambios se reflejan en los recordset de todos los usuarios
• adOpenDynamic - el cursor se mueve hacia delante y atras en el recordset. permite actualizar el recordset y los cambios se reflejan en los recordset de todos los usuarios inmediatamente sin necesidad de hacer una sincronizacion
• adOpenStatic - se muestra una copia estatica de la BD y los cambios no se ven. el cursor se mueve hacia delante y atras en el recordset.
El bloqueo del registro:
• adLockReadOnly - default, de solo lectura
• adLockPessimistic - forza a la BD a bloquear el registro completo antes de editar
• adLockOptimistic - bloquea los registros despues de llamar la instruccion UPDATE
• adLockBatchOptimistic - permite actualizacion por lotes, en vez de actualizar un registro a la vez
Fuente:
http://www.dotnetspider.com/forum/Vi...?ForumId=16958