Portanto, temos um problema interessante em que os usuários estão recebendo o seguinte erro ao tentar consultar uma exibição no SQL Server 2008 R2:
Msg 7415, nível 16, estado 1, linha 1 Acesso ad hoc ao provedor OLE DB 'Microsoft.ACE.OLEDB.12.0' foi negado. Você deve acessar esse provedor por meio de um servidor vinculado.
Pesquisando o problema, encontrei mais de alguns artigos listando alterações nos parâmetros OPENROWSET, alterações no valor do registro, consultas distribuídas no AdHoc etc. (Links para artigos abaixo)
http://www.johnsoer.com/blog/?p=538
Ainda estamos recebendo o erro após seguir as etapas nos links acima.
A ressalva aqui é que, quando criamos uma conta de teste e a saímos - ela funcionou perfeitamente. Meus colegas com acesso de administrador também podem executar a consulta sem problemas.
Esta consulta está sendo alimentada de um arquivo excel local para o servidor que hospeda esta instância.
Alguém sabe de outras correções para 2008?
fonte
Para mim, verifique se você possui uma chave de registro denominada "DisallowAdhocAccess" value = 0 em [HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Microsoft SQLServer \ MSSQL _. \ Providers \ Microsoft.ACE.OLEDB.12.0] Se não existir, crie-a.
fonte