CORRECÇÃO: Para XML EXPLICIT: atributo de conflito na xmltext não é substituído se xmltext contém DBCS

Traduções de Artigos Traduções de Artigos
Artigo: 290083 - Ver produtos para os quais este artigo se aplica.
N.º DE BUGS: 236233 (SHILOH_BUGS)
Expandir tudo | Reduzir tudo

Sintomas

Num modo XML EXPLICIT, em determinadas circunstâncias, com o xmltext elemento definido de conjunto de caracteres como bytes duplos (DBCS), uma consulta não pode substituir o atributo de conflito e poderá produzir XML correctamente formado.

Resolução

Para resolver este problema, obtenha o service pack mais recente do SQL Server 2000. Para obter informações adicionais, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
290211INF: How to Obtain the Latest SQL Server 2000 Service Pack

Ponto Da Situação

A Microsoft confirmou que este é um problema no SQL Server 2000. Este problema foi corrigido pela primeira vez no SQL Server 2000 Service Pack 1.

Mais Informação

Num modo XML EXPLICIT, em condições normais, se um atributo que é a elemento de xmltext entra em conflito com um atributo que são obtidos no mesmo nível de elemento, o atributo in xmltext é ignorado e substituído. Sob determinadas condições com DBCS, no entanto, o atributo de conflito não é substituído, mas em vez disso, está também duplicado. Isto produz XML correctamente formado.

Para reproduzir este comportamento, crie uma tabela, inserir uma linha e consultar a tabela da seguinte forma:
create table T1 (F0 int primary key, F1 TEXT collate Japanese_CI_AS)
go
insert into T1 values (111, '<elt1 att0="222" att1="?"><elt2 att2="?" /></elt1>')
go
select 1 as TAG, 0 as parent, F1 as [elt1!1!!xmltext], F0 as [elt1!1!att0] from T1 for xml explicit
				
seguem é devolvido
-- [INCORRECT RESULT] - att0 is not overwritten.

XML_F52E2B61-18A1-11d1-B105-00805F49916B                                                                                                                                                                                                                         
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 
<elt1 att0="111" att0="222" att1="?"><elt2 att2="?" /></elt1>

				
quando o resultado esperado deve ser da seguinte forma:
-- [EXPECTED  RESULT] - att0="222" is overwritten with att0="111"

XML_F52E2B61-18A1-11d1-B105-00805F49916B                                                                                                                                                                                                                         
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 
 <elt1 att0="111" att1="?"><elt2 att2="?" /></elt1>
				

Propriedades

Artigo: 290083 - Última revisão: 6 de novembro de 2003 - Revisão: 3.2
A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2000 Standard Edition
Palavras-chave: 
kbmt kbbug kbfix kbsqlserv2000sp1fix KB290083 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 290083

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com