Published on

September 2, 2003

Compreendendo o Processamento de XML do Lado do Cliente no SQL Server

Neste artigo, exploraremos o conceito de processamento de XML do lado do cliente no SQL Server. O processamento de XML do lado do cliente refere-se ao processo de transferir algumas das tarefas de processamento de XML do servidor SQL para o servidor web em um ambiente de várias camadas.

Por padrão, o componente SQLXML localizado no servidor IIS envia uma solicitação para o servidor SQL, que a processa, gera um conjunto de linhas padrão, transforma-o em formato XML e retorna os resultados de volta para o servidor web. No entanto, em um ambiente de várias camadas, pode ser benéfico descarregar parte do processamento, especialmente a transformação para o formato XML, para a camada onde residem servidores web redundantes e balanceados.

Há duas maneiras de implementar o processamento de XML do lado do cliente no SQL Server:

  1. Usando o diretório virtual SQLASAPI “Executar no cliente”, em combinação com consultas de URL, mapeamento de esquemas ou consultas de modelo.
  2. Usando modelos com o atributo “client-side-xml” definido.

Vamos dar uma olhada em um exemplo usando a tabela Shippers do banco de dados Northwind. Primeiro, precisamos criar o diretório virtual Northwind usando a ferramenta de Gerenciamento de Diretórios Virtuais do IIS. Em seguida, selecionamos a caixa de seleção “Executar no cliente” na guia Configurações da caixa de diálogo Propriedades do Diretório Virtual Northwind.

Em seguida, podemos executar uma consulta de XML do lado do cliente digitando a seguinte URL na janela do navegador do cliente:

http://WebServer/Northwind?sql=SELECT+*+FROM+SHIPPERS+FOR+XML+NESTED&root=ShippersList

Isso retornará a representação XML da tabela Shippers na janela do navegador web.

É importante observar que as consultas de XML do lado do cliente têm algumas peculiaridades sintáticas. Embora o modo da instrução FOR XML não possa ser definido como AUTO, você pode usar os modos RAW, EXPLICIT e NESTED (combinados com as palavras-chave ELEMENTS, XMLDATA e BINARY BASE64) para o processamento de XML do lado do cliente.

O processamento de XML do lado do cliente também pode ser realizado criando uma página da web com um formulário que envia uma solicitação POST para o servidor web. O formulário pode incluir campos de entrada ocultos especificando a consulta SQL e o formato XML desejado. Ao selecionar a caixa de seleção “Permitir POST” na caixa de diálogo Propriedades do servidor web, a consulta do lado do cliente pode ser executada.

Outra abordagem é criar um modelo XML e habilitar a opção “Permitir consultas de modelo” na caixa de diálogo Propriedades do servidor web. O modelo pode ser acessado digitando a URL apropriada no navegador.

Alternativamente, você pode modificar um modelo diretamente adicionando um atributo “client-side-xml” e definindo seu valor como 1. Esse atributo tem precedência sobre a opção “Executar no cliente”, permitindo que você controle o modo de processamento.

Como você pode ver, o processamento de XML do lado do cliente no SQL Server é relativamente simples de implementar. Ele fornece flexibilidade na distribuição das tarefas de processamento de XML e pode melhorar o desempenho em determinados cenários. No próximo artigo, exploraremos maneiras de publicar procedimentos armazenados e modelos como serviços da web no SQL Server 2000.

Fique ligado para mais dicas e truques do SQL Server!

Click to rate this post!
[Total: 0 Average: 0]

Let's work together

Send us a message or book free introductory meeting with us using button below.