Ayuda con ado

Tengo esto:
set con = new adodb.connection
set rst = new adodb.recordset
con.open("provider:...; datasource=c:\mibd.mdb") ' o algo asi
rst.cursortype= adopendinamic
rst.locktype= adlockoptimistic
rst.cursorlocation=aduseclient
set rst= con.execute(sql)
El problema es que al parar la ejecución en la linea siguiente, para comprobar los valores, estos no son los que yo he puesto en código sino otros, y me gustaría saber porque
ademas no me deja utilizar los movelast y moveprevious(me dice algo como que no se puede mover hacia atrás)
El otro problema es que no me deja ni actualizar ni borrar un registro mediante sql o recordset. Delete o .update
podriais decirme que hago mal? Muchas gracias
Respuesta
1
Conexión con Ado, Primer paso hacer referencia a la librería de Microsoft ActiveX Data Object 2.X
luego declarar el siguiente código ya se en un modulo o en otro lado
Public cn As ADODB.Connection
Public rs As ADODB.Recordset
Set cn = New ADODB.Connection
cn.Provider = "SQLOLEDB"
cn.ConnectionString = "USER ID =" & UsuarioP & ";PWD=" & PasswordU & "; " _
& "DATA SOURCE=" & ServerN & "; INITIAL CATALOG=" & DB
cn.Open
Hasta aca abrimos la conexion
Ahora si tienes un formulario donde quieres hacer uan consulta haces esto
Dim rsConsulta As New ADODB.Recordset
strSQL = "Select * from X"
rsConsulta.CursorLocation = adUseClient
rsConsulta.Open strSQL, cn, adOpenKeyset, adLockOptimistic
If rsConsulta.BOF = True Then
MsgBox "No Hay Datos", vbCritical, "ADO"
End If
si quieres actualizar algun dato de esta tabla te recomiendo que uses sentencias de SQL
strSQL = "UPDATE Etiquetas SET Estado= '" & 1 & "' WHERE Codigo='" & strCodigo & "'"
'Ejecutas el query y se hace el update
Cn. Execute strSQL
Asi puedes hacer para eliminar y con un Insert para agregar registro, no tendras problemas y podras trabjar con el movelast, etc, etc.
Espero que te sirva si quieres ejemplos escríbeme a [email protected]

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas