SQL Server 2000 supporta una particolare sintassi, offerta da un componente chiamato SQLXML, che permette di aggiungere funzionalità XML-based alle nostre query.
In particolare, è possibile creare al volo un file XML a partire dal risultato di una query, sfruttando come base di partenza questo script:
<%
' imposto il formato della risposta su XML
Response.ContentType="text/xml"
set conn = Server.CreateObject("ADODB.Connection")
conn.Open "Provider=sqloledb; Data Source=(local); Initial Catalog=pubs; Integrated Security=SSPI;"
XmlSQL = "<root><sql:query xmlns:sql=""urn:schemas-microsoft-com:xml-sql"">{0}</sql:query></root>"
strSQL = "SELECT * FROM titles FOR XML AUTO, ELEMENTS"
' creo la stringa per fare la query
SQL = Replace(XmlSQL, "{0}", strSQL)
' oggetto command per effettaure la query
Set command = Server.CreateObject("ADODB.Command")
command.ActiveConnection = conn
' dialetto XML
command.Dialect = "{5D531CB2-E6Ed-11D2-B252-00C04F681B71}"
command.CommandText = SQL
' scrivo sull'oggetto Response l'output
command.Properties("Output Stream") = Response
command.Properties("XML Root") = "root"
command.Execute , , 1024
' chiusura
set command = Nothing
conn.Close
set conn = Nothing
%>L'output sarà fatto a video, sfruttando l'oggetto Response, ma nulla vi vieta di caricare i dati all'interno di XmlDom ed agire di conseguenza.
Di particolare interesse la possibilità di avere un formato differente, con i valori dei campi come proprietà di un nodo centrale, rimuovendo la clausola EXPLICIT dalla query.
Con questo script e con poca fatica è possibile dunque creare facilmente esportazioni in formato XML.
Approfondimenti
Query XML con T-SQL e SQL Server 2000
https://www.aspitalia.com/articoli/db/xmlt-sql.aspx
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
I più letti di oggi
- Effettuare il multi-checkout in linea nelle pipeline di Azure DevOps
- Accedere a risorse e immagini in Windows Store app di Windows 8
- Alleggerire le applicazioni WPF sfruttando gli oggetti Freezable
- Permettere il Drag-and-drop solo su zone predefinite con Silverlight 2.0
- Consumare dati binari in realtime lato client con ASP.NET Core SignalR
- Effetto turnstile su tutte le pagine con il Windows Phone Toolkit
- Personalizare l'icona e le funzionalità di un sito web per iOS e IE
- Caricamenti veloci da CDN e fallback locale con ASP.NET Core
- Utilizzare dati in formato XML in XAML
- Accedere a dati esposti con WebService con Silverlight 1.0


