Estoy intentando averiguar cómo ejecutar una consulta de anexión dinámica en Access 2010 en una tabla de base de datos ODBC (consulte question 12592953) y alguien sugirió habilitar la salida de depuración de showplan: techrepublic link. Pero las bases de datos de Access 2010/accdb aparentemente no usan el motor Jet, así que esto no me ayuda.¿Cómo obtener planes de consulta (showplan.out) desde Access 2010?
Actualización: Esta es la consulta que estoy intentando hacer funcionar (una descripción completa está en la otra pregunta de stackoverflow vinculada anteriormente). Se supone que debe actualizar la copia local de una tabla con las nuevas filas de la copia remota. Pero lo que sucede es que Access extrae toda la tabla remota (que es enorme y hace que ODBC expire), luego ejecuta el WHERE
localmente.
INSERT INTO local (dt, latitude, longitude)
SELECT dt, latitude, longitude
FROM remote_odbc, (SELECT max(dt) AS max_dt FROM local) AS sub
WHERE remote_odbc.dt > max_dt;
¿Hay algo similar a la/depuración corte del registro Jet/plan de presentación en Access 2010 para obtener más información sobre cómo acceder a las vistas de una consulta?
El acceso tiene ADO y DAO, aunque es DAO nativo. Danos un ejemplo de qué tipo de declaración de Dynamic Append SQL estás tratando de hacer. En el pasado he creado funciones auxiliares para ayudar en la construcción de las sentencias SQL de acceso – GoldBishop
En cuanto a cómo Access ve una declaración SQL, es un motor de instrucciones SQL muy básico. Notarás que, fuera de la sintaxis de framework, no es muy robusto. Puede hacer Insertar, Eliminar, Eliminar, Seleccionar y algunas declaraciones específicas de acceso, pero eso es todo. La capacidad de ejecutar lotes es muy frustrante (dejó Access para MS SQL y ahora volvió a Access para un cliente). La única forma de obtener el efecto del proceso por lotes es a través de una macro de VBA y de RecordSet. – GoldBishop
@GoldBishop: Actualicé la pregunta. Los detalles completos están en la otra pregunta a la que hago referencia. – cswingle