Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Librerías ADO

0 views
Skip to first unread message

Am3bA

unread,
Jun 16, 2006, 9:27:02 AM6/16/06
to
Hola a todos. Veréis, tengo un problemilla que creo que se debe a las
librerías de MS ActiveX Data Object.
Tengo una base de datos en la que mediante código accedo a algunas tablas
para buscar ciertos valores. Inicialmente declaraba un objeto recordset y
recorría la tabla hasta encontrarlo, con el siguiente código:
Set rst = New ADODB.Recordset
rst.ActiveConnection = CurrentProject.Connection
...
El problema es que ahora quiero hacer esa misma operación sobre la misma
tabla pero vinculada desde un sql server (subí las tablas con un proyecto
adp) y me da error: "Error de compilación: no se encontró el método o el dato
miembro"; cuando abre el código para depurar, señala el "ActiveConnection", y
de hecho si escribo rst. no aparece esa propiedad del recordset.

La librería ADO que estaba usando era la Microsoft Active Data Objects 2.1
Library, he probado con la 2.5 y tampoco va. Además antes con la tabla en
local sí funcionaba...

¿Alguien sabe cómo solucionarlo?

Ju@nK

unread,
Jun 16, 2006, 10:13:39 AM6/16/06
to
Tienes que darle la cadena de conexión del servidor sql

--

Colabora con el grupo, contesta a este mensaje y dinos si te sirvió o no la
respuesta dada.
Muchas gracias.

Salu2
Ju@nK [MVP Access] [DCE2003 ***] + VSTO [DCE2005 **]
www.juank.tk
www.mvp-access.com
¿Que es un MVP?, enterate en http://mvp.support.microsoft.com

Nota: El contenido de este mensaje, así como el código
fuente que pueda ir incluido en el mismo, se proporciona
«COMO ESTÁ», sin garantías de ninguna clase, y no otorga
derecho alguno. Usted asume cualquier riesgo al poner en
práctica, utilizar o ejecutar la sugerencia del presente mensaje.
"Am3bA" <Am...@discussions.microsoft.com> escribió en el mensaje
news:BD17CEC2-D8C1-4339...@microsoft.com...

Am3bA

unread,
Jun 16, 2006, 10:20:01 AM6/16/06
to
¿Cómo? ¿Por qué ya no vale Activeconnection? ¿Puedes ponerme un ejemplo?

"Ju@nK" escribió:

José Mª Fueyo

unread,
Jun 16, 2006, 10:40:30 AM6/16/06
to
Hola
Tienes un ejemplo en
http://www.carlprothman.net/Default.aspx?tabid=87#OLEDBProviderForSQLServer
Aparte, sí te bajas e instalas las MZTOOLS (www.mztools.com), ésta trae un
generador de cadenas de conexión.

Respecto a por qué no funciona CurrentConnection, piensa que ya no te
conectas al mdb contenedor de tu código, sino contra un servidor SQL Server.
Por eso necesitas la cadena.

Salu2
--
José Mª Fueyo
[MS MPV Access]


Am3bA

unread,
Jun 19, 2006, 4:30:01 AM6/19/06
to
Gracias, José Mª.

A ver, estoy intentando lo siguiente pero no sé seguir:

Dim oConn As ADODB.Connection
oConn.Open "Provider=sqloledb;" & _
"Data Source=fos0ap11;" & _
"Initial Catalog=Informes;" & _
"User Id=;" & _
"Password="



Set rst = New ADODB.Recordset

Y ahora, ¿cómo hago que ese recordset haga referencia a esa base de datos?
Lo que antes hacía con rst.CurrentConnection, vamos.

Un saludo.
"José Mª Fueyo" escribió:

José Mª Fueyo

unread,
Jun 19, 2006, 5:01:48 AM6/19/06
to
Hola
rst.Open "Tabla/Consulta",oConn,"TipoDeCursor","TipoBloqueo"

Am3bA

unread,
Jun 19, 2006, 5:08:01 AM6/19/06
to
Gracias, José Mª. Voy a probarlo. Un saludo.

"José Mª Fueyo" escribió:

> Hola

Am3bA

unread,
Jun 19, 2006, 5:28:01 AM6/19/06
to
No me va. Ahora dice que Open no es un método de recordset. Me deja hacer
rst.openrecordset pero no .Open. Lo que he escrito es:

Dim oConn As ADODB.Connection
oConn.Open "Provider=sqloledb;" & _

"Data Source=NombreServidor;" & _


"Initial Catalog=Informes;" & _
"User Id=;" & _
"Password="

Set rst = New ADODB.Recordset

rst.Open "tblMiTabla", oConn, adOpenDynamic, adLockOptimistic <-- Esto
da error.

¿Tienes idea de por qué es?

José Mª Fueyo

unread,
Jun 19, 2006, 6:16:26 AM6/19/06
to
Hola de nuevo.
Revisa que referencias tienes marcadas. El método Open esá definido en el
objeto recorset

Dim oConn As ADODB.Connection, rst AS ADODB.Recordset


oConn.Open "Provider=sqloledb;" & _
"Data Source=NombreServidor;" & _
"Initial Catalog=Informes;" & _
"User Id=;" & _
"Password="

Set rst = New ADODB.Recordset

rst.Open "tblMiTabla", oConn, adOpenDynamic, adLockOptimistic

Salu2
--
José Mª Fueyo
[MS MVP Access]


Am3bA

unread,
Jun 20, 2006, 3:34:01 AM6/20/06
to
Gracias, José María.

"José Mª Fueyo" escribió:

0 new messages