CONECTAR PLATAFORMA .NET COM MS ACCESS 2013
Pessoal,
Boa noite!
Estou escrevendo esse tópico depois de muito, mas muito mesmo, procurar uma solução.
Estava eu, feliz e sorridente com minha nova licença do office 2013. Fiz a instalação, tudo lindo e maravilhos.
Tudo pronto! Agora vou executar minhas rotinas .NET que utilizam o ms Access como base de dados.
E adivinhem? é. Erro! Não encontrava o conector 12.0 do microsoft.ace.
Pois é, no inÃcio achei que era apenas mudar a versão do conector. Nada acontecia. Depois de muito pesquisar descobri o seguinte:
Esse tipo de conector no access está sendo extinto pela Microsoft. Ok, então fui no site da Microsoft e baixei o conector do office 2010 que todos falavam que funcionava. Advinhem? Nada.
Até que descobri o seguinte:
Pra quem tem o office versão x86, muito provavelmente vai dar tudo certo instalando o conector do office 2010, no entanto, quem utiliza a arquitetura x64 (e o instalador não permite que seja instalada a versão x86 no office 2013 x64)... Vai continuar ganhando uma tela de erro.
ENTAO QUAL A SOLUCAO?
Pelo incrÃvel que pareça é baixar o driver de conexão access 2007 (que só tem na versão x86) e tudo volta a funcionar miraculosamente, sem ter que trocar, sequer uma linha de código. Então segue o link:
2007 Office System Driver http://www.microsoft.com/en-us/download/confirmation.aspx?id=23734
Boa sorte a todos!
Henrique Seifarth.
Aproveitando o post, se você gosta de futebol não perca o blog:
http://www.noticiasfutebolsocialclub.com.br
Eu sou o dono, e garanto que quando não estou com problemas com a Microsoft eu estou lá rs.
Boa noite!
Estou escrevendo esse tópico depois de muito, mas muito mesmo, procurar uma solução.
Estava eu, feliz e sorridente com minha nova licença do office 2013. Fiz a instalação, tudo lindo e maravilhos.
Tudo pronto! Agora vou executar minhas rotinas .NET que utilizam o ms Access como base de dados.
E adivinhem? é. Erro! Não encontrava o conector 12.0 do microsoft.ace.
Pois é, no inÃcio achei que era apenas mudar a versão do conector. Nada acontecia. Depois de muito pesquisar descobri o seguinte:
Esse tipo de conector no access está sendo extinto pela Microsoft. Ok, então fui no site da Microsoft e baixei o conector do office 2010 que todos falavam que funcionava. Advinhem? Nada.
Até que descobri o seguinte:
Pra quem tem o office versão x86, muito provavelmente vai dar tudo certo instalando o conector do office 2010, no entanto, quem utiliza a arquitetura x64 (e o instalador não permite que seja instalada a versão x86 no office 2013 x64)... Vai continuar ganhando uma tela de erro.
ENTAO QUAL A SOLUCAO?
Pelo incrÃvel que pareça é baixar o driver de conexão access 2007 (que só tem na versão x86) e tudo volta a funcionar miraculosamente, sem ter que trocar, sequer uma linha de código. Então segue o link:
2007 Office System Driver http://www.microsoft.com/en-us/download/confirmation.aspx?id=23734
Boa sorte a todos!
Henrique Seifarth.
Aproveitando o post, se você gosta de futebol não perca o blog:
http://www.noticiasfutebolsocialclub.com.br
Eu sou o dono, e garanto que quando não estou com problemas com a Microsoft eu estou lá rs.
Hehehe, isso é perfeitamente normal, e há muito tempo atrás eu já avisava, aqui mesmo no VBMania.
Os drivers de OleDb que o pessoal originado do VB6 utiliza são para uso com desenvolvimento em 32 bits, e não em x64. Para utilizar drivers OleDb de 32 bits, provedores Web de 64 bits disponibilizam a ODBC em ambientes apropriados, por exemplo, pois eles [Ô]mapeiam[Ô] de forma satisfatória esses drivers.
Drivers 32 bits de outros mecanismos, como o Oracle e o MySQL por exemplo, também quando usados via OleDb, também apresentam os mesmos [Ô]sintomas[Ô].
Na verdade, o que é preciso para resolver o problema nestes casos (32 bits) é marcar a solução para utilizar a plataforma x86 ao invés de Any CPU ou x64.
Para o caso especÃfico do MS-Access (ACE) mais atual (com extensão [Ô].accdb[Ô]), a Microsoft disponibiliza (aqui) um [Ô]redistributável[Ô] que visa suplementar os antigos drivers de 32 bits. A última atualização desse pacote é de 2013, e já conta com o SP2 embutido.
Como sugestão, ao invés de utilizar um MS-Access como repositório, sem mais nada além do aplicativo, sempre é possÃvel usar o MS-SQL Server Compact Edition, que suporta até 4 Gb em dados. Não é preciso instalar servidor, administrar ou configurar contas de serviço, nada, só o aplicativo, que por si mesmo opcionalmente (por código) ainda cria a própria base de dados, com ou sem senha. E ainda que exija alguma programação extra, a base pode ser criada e utilizada em rede por meio de componente de serviço ou usando o mesmo princÃpio de quem usa um MS-Access, só que sem vários dos seus inconvenientes.
Os drivers de OleDb que o pessoal originado do VB6 utiliza são para uso com desenvolvimento em 32 bits, e não em x64. Para utilizar drivers OleDb de 32 bits, provedores Web de 64 bits disponibilizam a ODBC em ambientes apropriados, por exemplo, pois eles [Ô]mapeiam[Ô] de forma satisfatória esses drivers.
Drivers 32 bits de outros mecanismos, como o Oracle e o MySQL por exemplo, também quando usados via OleDb, também apresentam os mesmos [Ô]sintomas[Ô].
Na verdade, o que é preciso para resolver o problema nestes casos (32 bits) é marcar a solução para utilizar a plataforma x86 ao invés de Any CPU ou x64.
Para o caso especÃfico do MS-Access (ACE) mais atual (com extensão [Ô].accdb[Ô]), a Microsoft disponibiliza (aqui) um [Ô]redistributável[Ô] que visa suplementar os antigos drivers de 32 bits. A última atualização desse pacote é de 2013, e já conta com o SP2 embutido.
Como sugestão, ao invés de utilizar um MS-Access como repositório, sem mais nada além do aplicativo, sempre é possÃvel usar o MS-SQL Server Compact Edition, que suporta até 4 Gb em dados. Não é preciso instalar servidor, administrar ou configurar contas de serviço, nada, só o aplicativo, que por si mesmo opcionalmente (por código) ainda cria a própria base de dados, com ou sem senha. E ainda que exija alguma programação extra, a base pode ser criada e utilizada em rede por meio de componente de serviço ou usando o mesmo princÃpio de quem usa um MS-Access, só que sem vários dos seus inconvenientes.
Faça seu login para responder