Mensagem de erro "Uma tabela deve ter uma chave primária" quando tenta importar uma tabela ODBC para uma base de dados do Access 2010 Web num site SharePoint 2010


Sintomas


Considere o seguinte cenário:
  • Publicar uma base de dados Web do Microsoft Access 2010 para os serviços de acesso num site do Microsoft SharePoint 2010.
  • Tentar importar uma tabela de base de dados ODBC para uma tabela na base de dados Web.
Neste cenário, recebe a seguinte mensagem de erro:
Foram encontrados erros de compatibilidade Web durante a importação. Não foi possível concluir a importação. Para obter uma lista dos problemas encontrados durante a importação, clique na seguinte hiperligação: Problemas de compatibilidade Web.
Quando clica em Problemas de compatibilidade Web, a tabela de problemas de compatibilidade Web na base de dados Web é aberta. A tabela que contém o seguinte erro:
Uma tabela deve ter uma chave primária e deve ser um número com o tamanho do campo 'longo' para ser compatível com a Web.
No entanto, a tabela ODBC pode ser importada para uma base de dados do Access 2010 num computador cliente, mesmo que a tabela ODBC tem um campo de chave primária que contém um tipo de dados numéricos.

Causa


Este problema ocorre devido a um problema conhecido quando tenta importar uma tabela ODBC para uma base de dados do Access 2010 Web. Quando o Access 2010 importa uma tabela ODBC, o índice de chave primária não é importado. Nesta situação, apenas os dados do campo de chave primária são importados.

Solução


Para contornar este problema, siga estes passos:
  1. Inicie o Access 2010.
  2. Crie uma nova base de dados.
  3. Importe tabela ODBC para esta base de dados.
  4. Abra a tabela na vista estrutura .
  5. Defina o campo ID na coluna tipo de dadosnúmero
  6. No separador Geral da coluna de Propriedades do campo , defina o tamanho do campo como Número inteiro longo.
  7. Defina o campo de ID como a chave primária.
  8. Abra a base de dados do Access Web no site do SharePoint 2010.
  9. No separador Dados externos , clique em acesso.
  10. Utilize o Assistente de importação para importar a tabela do cliente de acesso para a base de dados do Web site de acesso.

Estado


A Microsoft confirmou que este problema ocorre nos produtos da Microsoft listados na secção "Aplica-se a".