none
Leer datos de base de datos ACCESS 2010 usando OPENROWSET. RRS feed

  • Pregunta

  • Hola a todos

    Primero que todo voy a decirles mi escenario: Windows Server 2012 R2 64, ACCESS 2010 32, SQL SERVER 2008 R2 64 ejecutando con la cuenta de Administrador, AccessDatabaseEngine 32. Lo que necesito hacer es conectar el sql a la bbdd access. He probado primero creando un servidor vinculado y despues usando OPENDATASOURCE y OPENROWSET y en los 3 casos obtengo el error
    "El proveedor OLE DB 'Microsoft.ACE.OLEDB.12.0' no puede usarse para consultas distribuidas porque está configurado para ejecutarse en el modo de subprocesamiento controlado simple."
    He buscado bastante en internet y unido todas las soluciones y he seguido todos los pasos que adjunto al final y sigo con el mismo error, además me he conectado mediante SSMS con la cuenta de Administrador y también con sa y siempre el mismo error. Como cosa curiosa y extraña es que despues de instalar el AccessDatabaseEngine "Microsoft.ACE.OLEDB" no me aparece en los proveedores en Objetos de servidor.

    Muchas gracias y saludos.


    EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'AllowInProcess', 1
    EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'DynamicParameters', 1
    exec sp_configure 'Advanced', 1
    RECONFIGURE
    GO
    exec sp_configure 'Ad Hoc Distributed Queries', 1
    RECONFIGURE
    GO
    exec sp_configure 'xp_cmdshell', 1
    RECONFIGURE
    GO
    sp_configure 'show advanced options', 1
    RECONFIGURE
    GO
    sp_configure 'Ad Hoc Distributed Queries', 1
    GO

    EXEC sp_addlinkedserver   
       @server = N'DATOS',   
       @provider = N'Microsoft.ACE.OLEDB.12.0',   
       @srvproduct = N'OLE DB Provider for ACE',  
       @datasrc = N'C:\SERVIDOR\DATOS\BBDDs.accdb';  
    GO


    SELECT id From OpenRowset('Microsoft.ACE.OLEDB.12.0',';Database=C:\SERVIDOR\DATOS\BBDDs.accdb;','SELECT * from Productos') as B
    GO

    SELECT *  FROM OPENDATASOURCE('Microsoft.ACE.OLEDB.12.0','Data Source=C:\SERVIDOR\DATOS\BBDDs.accdb')...Productos
    GO
    jueves, 13 de junio de 2019 9:07

Respuestas

  • Hola Raimundo Ferrer

    Gracias por levantar tu consulta en los foros de MSDN de Microsoft, con respecto a la misma, recomiendo ir al siguiente enlace en el cual expone un caso similar al que nos estás reportando y con una posible solución. 

    https://social.msdn.microsoft.com/Forums/es-ES/893cd8cd-2973-4a9b-b9e4-522ff2a74c7f/es-posible-leer-datos-desde-acces-y-guardarla-en-sql-server?forum=vbes

    Gracias por usar los foros de MSDN.

     

    Pablo Rubio

     ____

     

    Por favor recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema, es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde.

     

    Microsoft ofrece este servicio de forma gratuita, con la finalidad de ayudar a los usuarios y la ampliación de la base de datos de conocimientos relacionados con los productos y tecnologías de Microsoft. 

     

    Este contenido es proporcionado "tal cual" y no implica ninguna responsabilidad de parte de Microsoft.

     

     

    • Marcado como respuesta Raimundo Ferrer lunes, 15 de febrero de 2021 20:08
    jueves, 13 de junio de 2019 16:05
    Moderador