SQL - CONSULTA ENTRE ACCESS Y SQLSERVER

 
Vista:

CONSULTA ENTRE ACCESS Y SQLSERVER

Publicado por jorge (4 intervenciones) el 09/03/2007 18:32:49
Hola, quiero hacer una consulta de inserción de registros en una base de datos Access (en local) mediante ADO. Los registros proceden de una consulta de selección a una base de datos de SQL Server del servidor al cual me conecto por ODBC. Hice una consulta desde la conexión ADO de Accesss que funciona perfectamente, algo parecido a:

INSERT INTO TBL_ACCESS SELECT * FROM OPENDATASOURCE('SQLOLEDB','Data Source=AAA;User ID=user;Password=password'
).Northwind.dbo.TBL_SQLSERV

Pero resulta demasiado lenta (supongo que es porque la base de datos de SQL Server es demasiado grande como para manejarla desde la conexión de Access. Hay más de 30000 tablas y son bastante grandes). Así que, resulta más rápido trabajar con dos conexiones y sus correspondientes recordsets (con la de SQLServer hago la consulta de selección y luego recorro el recordset, pasando cada registro a otro abierto en Access). Pero sigue siendo horriblemente lento. Lo que querría hacer es trabajar sólo desde la conexión de SQL Server e insertar directamente los registros en mi base de datos local de Access mediante una sola consulta. Creo que sería más rápido (supongo, porque soy bastante novato con SQL Server), aunque no sé si es posible: el problema sería cómo puedo indicar en la consulta que quiero insertar los datos en una base de datos que está en mi propio equipo, en local.
(Nota: Probé vinculando tablas, pero es aún peor dado el tamaño de las tablas de origen)
Muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:CONSULTA ENTRE ACCESS Y SQLSERVER

Publicado por Correcaminos (4 intervenciones) el 12/03/2007 06:13:05
Puedes usar un DTS de SQL 2000; san bastante sencillos. La otra opcion es que armes una vista en SQL con los registros que quieras que devuelva (esto te sirve sobre todo si solo lo correras una vez). La otra es que vincules la tabla de sql desde el access.

Saludos
Si tienes alguna duda con como manejarte con los DTS, avisame y lo explico en mas detalle
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:CONSULTA ENTRE ACCESS Y SQLSERVER

Publicado por jorge (4 intervenciones) el 12/03/2007 09:25:10
Gracias, Correcaminos. Mi equipo no tiene instalado SQL Server. Todo lo que tengo es VB y ADO o Access. Lo cierto es que no sé absolutamente nada de DTS, aunque creo que admite OLE DB y podría manejarlo por VB. Te agradecería mucho si me pudieras echar una mano.
Nota: Ya lo intenté vinculando tablas de Access a SQL Server, pero tarda demasiado en actualizar. Como digo, las tablas del servidor son muy grandes y manejar todos los campos y registros es demasiado.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:CONSULTA ENTRE ACCESS Y SQLSERVER

Publicado por Isaías (5072 intervenciones) el 12/03/2007 19:31:57
¿Porque si tienes SQL SERVER, manejas Access?, ¿Has pensado en migrar lo que tienes en Access a SQL SERVER EXPRESS EDITION WITH ADVANCED SERVICES?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:CONSULTA ENTRE ACCESS Y SQLSERVER

Publicado por jorge (4 intervenciones) el 13/03/2007 11:54:10
Bueno, es un tema de mi empresa. Realmente yo no tengo SQL Server en mi equipo, aunque sí que accedo a un servidor con SQL Server, y pedir permisos de administrador para instalarlo se puede demorar mucho (esto es como un ministerio). Así que, por ahora, trabajo con Access a la espera de poder migrar más adelante.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:CONSULTA ENTRE ACCESS Y SQLSERVER

Publicado por Isaías (5072 intervenciones) el 14/03/2007 00:22:33
SQL SERVER EXPRESS EDITION WITH ADVANCED SERVICES, se puede instalar en tu maquina local, no requiere de licencias, ni permisos especiales.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:CONSULTA ENTRE ACCESS Y SQLSERVER

Publicado por jorge (4 intervenciones) el 15/03/2007 17:40:06
Gracias Isaías pero, creeme, aquí hacen falta permisos hasta para mear. Ya intenté instalarlo una vez y me las solicitó. Creo que la solución pasa por seguir trabajando sobre los recordsets registro a registro y esperar a que me autoricen la instalación.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar