A Microsoft distribui o Microsoft SQL Server 2005 ou o Microsoft SQL Server 2008 como um ficheiro transferível. Como as correções são cumulativas, cada nova versão contém todos os hotfixes e todas as correções de segurança que foram incluídas com o anterior Microsoft SQL Server 2005 ou Microsoft SQL Server 2008
Sintomas
Considere o seguinte cenário:
-
Instala uma instância do Microsoft SQL Server 2005 ou SQL 2008 num computador.
-
Cria-se uma tabela dividida que contém um índice não aglomerado que não está alinhado.
-
Executar a declaração de FUNÇÃO DE PARTIÇÃO ALTER para dividir ou fundir um intervalo de partição para a mesa divisória.
Neste cenário, recebe periodicamente a seguinte mensagem de erro:
Msg 2601, Nível 14, Estado 1, Linha 1Intro insira a linha de chaves duplicada no< nome de objeto> com índice único<nome unímoindexna>.
Causa
Este problema ocorre porque um erro é desencadeado no otimizador de consulta quando um intervalo de partição é dividido. Quando o plano de tempo de execução elimina e insere algumas linhas da gama de divisórias afetadas numa nova gama de divisórias, ocorre uma violação chave única.
Resolução
Informação de atualização cumulativa
Pacote de serviço SQL Server 2005 3
A correção para este problema foi lançada pela primeira vez na Atualização Cumulativa 15 para o SQL Server 2005 Service Pack 3. Para obter mais informações sobre este pacote de atualização cumulativa, clique no seguinte número de artigo para ver o artigo na Base de Conhecimento da Microsoft:
2507766 Pacote de atualização cumulativo 15 para SQL Server 2005 Service Pack 3Nota Como as construções são cumulativas, cada nova versão de correção contém todos os hotfixes e todas as correções de segurança que foram incluídas com o anterior lançamento de correção SQL Server 2005. A Microsoft recomenda que considere aplicar o mais recente lançamento de correção que contém este hotfix. Para mais informações, clique no número de artigo que se segue para ver o artigo na Base de Dados de Conhecimento Microsoft:
960598 O SQL Server 2005 constrói que foram lançados após o lançamento do SQL Server 2005 Service Pack 3 Os hotfixes do Microsoft SQL Server 2005 são criados para pacotes específicos de serviços sql Server. Tem de aplicar um hotfix SQL Server 2005 Service Pack 3 a uma instalação do SQL Server 2005 Service Pack 3. Por predefinição, qualquer hotfix que seja fornecido num pacote de serviços SQL Server está incluído no próximo pacote de serviços sql Server.
Pacote de serviço SQL Server 2005 4
A correção para este problema foi lançada pela primeira vez na Cumulativa Update 2 para SQL Server 2005 Service Pack 4. Para obter mais informações sobre este pacote de atualização cumulativa, clique no seguinte número de artigo para ver o artigo na Base de Conhecimento da Microsoft:
2489409 Pacote de atualização cumulativo 2 para SQL Server 2005 Service Pack 4Nota Como as construções são cumulativas, cada nova versão de correção contém todos os hotfixes e todas as correções de segurança que foram incluídas com o anterior lançamento de correção SQL Server 2005. A Microsoft recomenda que considere aplicar o mais recente lançamento de correção que contém este hotfix. Para mais informações, clique no número de artigo que se segue para ver o artigo na Base de Dados de Conhecimento Microsoft:
2485757 O SQL Server 2005 constrói que foram lançados após o lançamento do SQL Server 2005 Service Pack 4 Os hotfixes do Microsoft SQL Server 2005 são criados para pacotes específicos de serviços sql Server. Tem de aplicar um hotfix SQL Server 2005 Service Pack 4 a uma instalação do SQL Server 2005 Service Pack 4. Por predefinição, qualquer hotfix que seja fornecido num pacote de serviços SQL Server está incluído no próximo pacote de serviços sql Server.
Pacote de serviço SQL Server 2008 1
A correção para este problema foi lançada pela primeira vez na Atualização Cumulativa 13 para o SQL Server 2008 Service Pack 1. Para obter mais informações sobre este pacote de atualização cumulativa, clique no seguinte número de artigo para ver o artigo na Base de Conhecimento da Microsoft:
2497673 Pacote de atualização cumulativo 13 para SQL Server 2008 Service Pack 1Nota Como as construções são cumulativas, cada nova versão de correção contém todos os hotfixes e todas as correções de segurança que foram incluídas com o anterior lançamento de correção SQL Server 2008. A Microsoft recomenda que considere aplicar o mais recente lançamento de correção que contém este hotfix. Para mais informações, clique no número de artigo que se segue para ver o artigo na Base de Dados de Conhecimento Microsoft:
970365 O SQL Server 2008 constrói que foram lançados após o lançamento do SQL Server 2008 Service Pack 1 Os hotfixes do Microsoft SQL Server 2008 são criados para pacotes específicos de serviços sql Server. Tem de aplicar um hotfix SQL Server 2008 Service Pack 1 a uma instalação do SqL Server 2008 Service Pack 1. Por predefinição, qualquer hotfix que seja fornecido num pacote de serviços SQL Server está incluído no próximo pacote de serviços sql Server.
Pacote de serviço SQL Server 2008 2
A correção para este problema foi lançada pela primeira vez na Cumulativa Update 3 para SQL Server 2008 Service Pack 2. Para obter mais informações sobre este pacote de atualização cumulativa, clique no seguinte número de artigo para ver o artigo na Base de Conhecimento da Microsoft:
2498535 Pacote de atualização cumulativo 3 para SQL Server 2008 Service Pack 2Nota Como as construções são cumulativas, cada nova versão de correção contém todos os hotfixes e todas as correções de segurança que foram incluídas com o anterior lançamento de correção SQL Server 2008. A Microsoft recomenda que considere aplicar o mais recente lançamento de correção que contém este hotfix. Para mais informações, clique no número de artigo que se segue para ver o artigo na Base de Dados de Conhecimento Microsoft:
2402659 O SQL Server 2008 constrói que foram lançados após o lançamento do SQL Server 2008 Service Pack 2 Os hotfixes do Microsoft SQL Server 2008 são criados para pacotes específicos de serviços sql Server. Tem de aplicar um hotfix SQL Server 2008 Service Pack 2 a uma instalação do SQL Server 2008 Service Pack 2. Por predefinição, qualquer hotfix que seja fornecido num pacote de serviços SQL Server está incluído no próximo pacote de serviços sql Server.
Estado
A Microsoft confirmou que este problema ocorre nos produtos da Microsoft listados na secção "Aplica-se a".
Referências
Para obter mais informações sobre a declaração de função de partição de alteração transact-SQL, visite o seguinte site da MSDN:
Informações gerais sobre a declaração da função de partição de alteração transact-SQLPara obter mais informações sobre as diretrizes especiais para índices divididos, visite o seguinte website da MSDN:
Orientações especiais para índices divididosPara obter mais informações sobre o Modelo de Manutenção Incremental para O Servidor SQL, clique no seguinte número de artigo para ver o artigo na Base de Conhecimento da Microsoft:
935897 Um Modelo de Manutenção Incremental está disponível na equipa do SQL Server para entregar hotfixes para problemas relatadosPara obter mais informações sobre o esquema de nomeação para atualizações do SQL Server, clique no seguinte número de artigo para ver o artigo na Base de Conhecimento da Microsoft:
822499Novo esquema de nomeação para pacotes de atualização de software do Microsoft SQL ServerPara obter mais informações sobre a terminologia da atualização do software, clique no seguinte número de artigo para ver o artigo na Base de Conhecimento da Microsoft:
824684Descrição da terminologia padrão utilizada para descrever as atualizações de software da Microsoft