Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo ajuda você a resolver o problema que ocorre quando você processa uma dimensão no SQL Server Analysis Service.
Versão original do produto: SQL Server
Número original do KB: 2002757
Sintomas
No SQL Server Analysis Service, dimensione o processamento e você pode receber uma mensagem de erro semelhante à seguinte:
Erros no mecanismo de armazenamento OLAP: Uma chave de atributo duplicada foi encontrada ao processar: Tabela: 'TABLE_NAME', Coluna: 'ATTRIBUTE_COLUMN_NAME, Valor: 'ATTRIBUTE_VALUE'. O atributo é 'ATTRIBUTENAME' .
Causa
Este comportamento ocorre por design. SQL Server Analysis Services detectará a chave de atributo duplicada durante o processamento.
O erro acima também pode ser disparado quando o banco de dados relacional diferencia maiúsculas de minúsculas e os valores de dados estão em maiúsculas e minúsculas. No Analysis Services, ao criar uma dimensão e seus atributos, a ordenação padrão do atributo não diferencia maiúsculas de minúsculas. Por padrão, a dimensão tem ErrorConfiguration|KeyDuplicate definido como ReportAndStop. Portanto, se você tiver um banco de dados relacional que diferencia maiúsculas de minúsculas que, por exemplo, contém valores de dados BOOKNAME e Bookname, durante o processamento da dimensão, se os dados BOOKNAME foram processados primeiro como chave de atributo, o processamento subsequente falhará com o seguinte erro:
Uma chave de atributo duplicada foi encontrada ao processar: Tabela: 'TABLE_NAME', Coluna: 'ATTRIBUTE_COLUMN_NAME, Valor: 'Bookname'. O atributo é 'ATTRIBUTENAME'.
Solução
Ao criar dimensões, atributos de dimensão e relacionamentos de atributo, você deve verificar os valores de dados relacionais em busca de duplicatas e, se existirem, use um dos seguintes procedimentos para resolver o problema:
Opção 1: Edite a consulta nomeada no Modo de Exibição da Fonte de Dados para selecionar apenas os dados com o caso desejado.
Por exemplo, você pode usar
UPPERuma função deLOWERcaso na consulta nomeada.Opção 2: Você pode contornar o problema usando uma das seguintes opções:
Observação
Essas opções geralmente não são recomendadas, pois podem resultar em dados inesperados, mas podem ser usadas para fins de solução de problemas.
Defina o valor do elemento KeyDuplicate como ReportAndContinue e KeyErrorLimitAction como StopLogging em ErrorConfiguration.
Usando o Editor de Dimensões no Business Intelligence Development Studio (BIDS), abra a dimensão à qual o atributo pertence e defina a ordenação adequada para o atributo usando a propriedade Collation da dimensão.
Observação
Isso fará com que a dimensão tenha uma chave de atributo duplicada (valores de maiúsculas e minúsculas diferentes) após a conclusão do processamento.