Nel caso si devono gestire dei dati in formato xml la Store Procedure sp_xml_preparedocument ci può tornare utile. L'esempio qui di seguito, illustra l'utilizzo di tale SP, per inserire dei dati in una determinata tabella, con un campo di tipo xml.
Supponiamo di avere una tabella, chiamata TBL_XML, con dei campi Nome e cognome di tipo varchar, code di tipo int data di tipo datetime e codexml di tipo xml, e vogliamo inserire in tale tabella i dati di un file xml, formattato con tali campi. Lo script qui di seguito illustra come inserire i dati contenuti nel file xml in tale tabella. Utilizzando in un primo momento la sp sp_xml_preparedocument e poi tramite openxml, gestire i vari dati.
DECLARE
@xmlDoc NVARCHAR(300)DECLARE @handle INTSET @xmlDoc = N'<ROOT> <TBL_xml><Nome>emanuele</Nome>
<cognome>ma</cognome>
<data>12/10/2009</data>
<code>1</code>
<Codexml><pippo>prova</pippo></Codexml>
</TBL_xml>
</ROOT>'
EXEC
sp_xml_preparedocument @handle OUTPUT, @xmlDocinsert
TBL_xmlSELECT
* FROM OPENXML (@handle, '/ROOT/TBL_xml', 2) WITH(
Nome VARCHAR(50), cognome VARCHAR(50), data datetime, code int, Codexml xml)EXEC
sp_xml_removedocument @handleselect
* from TBL_xml
Nessun commento:
Posta un commento