Come interrogare un XSD

June 11

Come interrogare un XSD


XML Schema Definition (XSD) è stato sviluppato dal World Wide Web Consortium per la creazione di schemi XML, che sono un insieme di regole da seguire per tutti i dati validi Extensible Markup Language (XML). E 'utilizzato per il trasporto e l'archiviazione di dati strutturati con l'ausilio di tag XML su più sistemi collegati. Ogni documento XML consiste di un insieme di elementi, ed ogni elemento inizia e termina con un tag di inizio e di fine, rispettivamente. SQL Server ha predefinito i metodi e le funzioni XQuery per estrarre informazioni da un documento XML valido.

istruzione

1 Fare clic sul menu di Windows "Start", quindi selezionare "Tutti i programmi". Individuare e selezionare "Microsoft SQL Server".

2 Selezionare "Microsoft SQL Server Management Studio." Si apre la finestra "Connessione al server". Fornire valori appropriati o accettare i valori di default per "tipo di server", "Nome server" e "modalità di autenticazione". Fai clic su "Connect" per avviare la connessione al server. La schermata "SQL Server Management Studio" si aprirà una volta stabilita la connessione.

3 Fare clic su un database nel "Soluzioni Explorer" nella cartella "Database" e quindi scegliere "Nuova query" per aprire la "Query Analyzer."

4 Creare uno schema XML utilizzando il comando "CREATE XML SCHEMA COLLECTION". Inserire la seguente query in "Query Analyzer":

CREATE XML SCHEMA COLLECTION cliente

COME

'<Schema xmlns: http://www.w3.org/2001/XMLSchema>

<Element name = "root">

<ComplexType>

<Sequence>

<Element name = "CustomerName" type = "stringa" />

<Element name = "CustomerType" type = "stringa" />

</ Sequence>

</ ComplexType>

</ Element>

</ Schema>

Eseguendo il comando precedente creerà un "schema XML" nome "clienti" con "CustomerName" e "CustomerType", come gli elementi.

5 Utilizzare la funzione "XML_SCHEMA_NAMESPACE" per visualizzare le informazioni relative agli schemi XML già definiti. Inserire la seguente query in "Query Analyzer":

SELEZIONE XML_SCHEMA_NAMESPACE ( 'dbo', 'cliente')

Eseguendo il comando di cui sopra mostrerà il documento XML con il nome di cliente.

6 Utilizzare il metodo "interrogazione (XQuery)" per la restituzione di un tipo di dati XML contenente i frammenti in XQuery. Inserire la seguente query in "Query Analyzer":

customerdata SELECT. query ( '/ root / CustomerName')

DA cliente

Eseguendo il comando precedente restituirà un valore di "XML" che contiene il frammento:

<CustomerName> ABC DEF </ CustomerName>

7 Utilizzare il "valore (XQuery, SQLTYPE)" per restituire un valore scalare del tipo di dati SQL specificato. Inserire la seguente query in "Query Analyzer":

DICHIARARE xml @xmlvar (cliente)

SELEZIONE @ x.Value ( '(/ root / CustomerType / @ CustomerID) [2]', 'int')

Il comando precedente restituirà il valore del tipo di dati "int" memorizzato nel documento XML come "CustomerID".

8 Utilizzare "esistere (XQuery)" metodo per verificare l'esistenza di un frammento nel documento XML nel modo seguente:

SELEZIONE customerdata.exist ( '/ root / CustomerName')

DA cliente

Eseguendo il comando precedente restituirà un valore di "1" se i dettagli richiesti esistono nel documento XML. In alternativa, è possibile utilizzare la "esistono ()" il comando per verificare l'esistenza di un particolare record nel seguente modo:

SELECT *

DA cliente

DOVE customerdata.exist ( '/ root / CustomerName') = 1