O método escolhido
pelo SQL Server 2000 para permitir modificações em dados usando documentos XML
é usando o data source
OPENXML. Esta função prove a visualização dos dados em rowset.
Para usar o data source XML com
T-SQL, o documento precisa ser validado e armazenado na memória em uma
representação de árvore. Esta árvore representa as informações de cada nodo que o SQL Server
2000 terá que saber para preparar a linha de leitura.
No SQL Server 2000
existe uma stored
procedure, chamada sp_xml_preparedocument, que irá converter o
documento XML para ser representado internamente pelo SQL Server 2000.
SP_XML_PREPAREDOCUMENT
O OPENXML não pode
trabalhar com uma string formatada em XML. O OPENXML vai ler os dados já
devidamente formatados, pode ele não interpreta a estrutura de nodos. Por este
motivo usamos o SP_XML_PREPAREDOCUMENT para converter o documento em um padrão
que o SQL Server 2000 possa ler e interpretar.
Esta stored procedure cria
uma representação temporária na memória com o formato de uma view.
A figura abaixo
exibe uma estrutura de um documento XML usado em nosso exemplo.
Já a figura abaixo
mostra como o SQL Server lê as informações depois que o documento passar pela stored procedure SP_XML_PREPAREDOCUMENT.
Segue a baixo o
codigo para fazer a importação dos dados.
O código abaixo
mostra como fazer uma importação do conteúdo XML para dentro de uma tabela
temporária chamada #funcionario, a partir desta tabela é só copiar os dados de
uma tabela do SQL Server para outra tabela. Não existe mistério nisso.
Segue durante o
código o comentário de cada linha e comandos do SQL Server.
Observação: nunca esqueça que é muito
importante remover o conteúdo do documento XML da memória.
bom pessoal espero que tenha ajudado alguém, e como sempre !!
clica, clica, clica...rsrsrs