SoloCodigo
Programación General => Visual Basic 6.0 e inferiores => Mensaje iniciado por: agfed en Martes 30 de Septiembre de 2003, 17:28
-
Tengo una base de datos que hice en acces y la quiero accesar desde visual basic, poniendo los datos de una tabla en una datagrid.
Hice la conexion:
cnn.open "provider=microsoft.jet.oledb.4.0; datasource basededatos
hice un recordset
rsm.open "select * from tabla", cnn, adopendynamic, adlockoptimistic
y quise poner los datos en el datagrid con esto:
set datagrid1.datasource=rsm
y sale el error
error 7004 en tiempo de ejecucion
el conjunto de filas no admite marcadores
me faltara una referencia o es error de codigo, por favor ayuden a este novato.
:think:
-
Hola agfed.
Prueba a hacer lo siguiente:
Declara un objeto command y asignale a la propiedad ActiveConnection la conexión que estás utilizando.
Dim cmd1 As ADODB.Command
set cmd1 = new ADODB.Command
set cmd1.ActiveConnection = cnn
cmd1.CommandType = adCmdUnknown
y luego abre el recordset de esta forma:
set rsm = cmd1.Execute("SELECT * FROM Tabla WHERE campo=loquesea")
y ya por fin:
set datagrid1.datasource = rsm
Prueba a ver que tal... Si sigue sin ir, prueba a hacer esto antes de asignar el recordset:
cmd1.CursorLocation = adUseClient
Ya contarás (aunque yo me voy de ¡¡¡VACACIONES!!!)
Chao.
-
tu sugerencia me manda un error de que falta un comando no declarado.
Pues te comento que ya encontre la solucion y no la iba a encontrar por este camino.
Mi error fue tratar de trabajar con bases acces 2000. Despues de examinar un ejemplo que vi en internet, resulto que la solucion estaba en regresar la version de la base de datos a una version anterior de acces.
Es todo lo que necesitaba. Ademas, estoy usando el asistente de formularios para ahorrarme mucho trabajo.
Gracias de todos modos. Bye.
Finito.
:good:
-
Si instalas el Servica Pack 5 del Visual Studio 6, que está disponible en el sitio Microsoft, podrás utilizar una BD de Access 2000 sin problemas.
:good:
-