Hvordan Query en XSD

Hvordan Query en XSD


XML Schema Definition (XSD) er utviklet av World Wide Web Consortium for å lage XML-skjemaer, som er et sett med regler som skal følges av en hvilken som helst gyldig Extensible Markup Language (XML) data. Den brukes for transport og lagring av strukturerte data ved hjelp av XML-koder over flere tilkoblede systemer. Hver XML-dokument består av et sett av elementer, og hvert element begynner og slutter med henholdsvis en start og slutt tag. SQL Server har forhåndsdefinerte metoder og funksjoner i XQuery for å trekke ut informasjon fra en gyldig XML-dokument.

Bruksanvisning

1 Klikk på Windows "Start" -menyen, og velg deretter "Alle programmer". Finn og klikk "Microsoft SQL Server."

2 Velg "Microsoft SQL Server Management Studio." Den "Koble til tjener" -vinduet åpnes. Gi riktige verdiene eller godta standardverdiene på "Server type", "Server name" og "Authentication mode". Klikk på "Connect" for å starte tilkoblingen til serveren. "SQL Server Management Studio" skjerm vil åpne når tilkoblingen er opprettet.

3 Høyreklikk på en database i "Solutions Explorer" under "Databaser" -mappen, og velg deretter "New Query" for å åpne "Query Analyzer."

4 Opprett en XML Schema bruke "CREATE XML SCHEMA COLLECTION" kommandoen. Oppgi følgende spørring i "Query Analyzer":

CREATE XML SCHEMA COLLECTION kunde

SOM

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

<Element name = "root">

<Complex>

<Sekvens>

<Element name = "Customer" type = "string" />

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

</ Sekvens>

</ Complex>

</ Element>

</ Skjema>

Utfører kommandoen ovenfor vil skape en "XML Schema" heter "Kunden" med "Customer" og "CustomerType" som elementene.

5 Bruk "XML_SCHEMA_NAMESPACE" funksjon for å vise informasjon relatert til de allerede definerte XML-skjemaer. Oppgi følgende spørring i "Query Analyzer":

SELECT XML_SCHEMA_NAMESPACE ( 'dbo', 'kunde')

Utfører kommandoen ovenfor viser XML-dokument ved navn kunden.

6 Bruk "spørring (XQuery)" metoden for å returnere en xml datatype som inneholder fragmenter i XQuery. Oppgi følgende spørring i "Query Analyzer":

VELG customerdata. spørring ( '/ root / Customer')

Fra kunde

Utfører kommandoen ovenfor vil returnere en "xml" verdi som inneholder fragment:

<Customer> ABC DEF </ Customer>

7 Bruk "verdi (XQuery, SQLTYPE)" for å returnere en skalar verdi av den angitte SQL-datatypen. Oppgi følgende spørring i "Query Analyzer":

ERKLÆRER @xmlvar xml (kunde)

SELECT @ x.value ( '(/ root / CustomerType / @ CustomerID) [2]', 'int')

Kommandoen ovenfor vil returnere verdien av datatypen "int" lagret i XML-dokument som "CustomerID."

8 Bruk «eksisterer (XQuery)" -metode for å kontrollere at det foreligger et fragment i XML-dokumentet på følgende måte:

SELECT customerdata.exist ( '/ root / Customer')

Fra kunde

Utfører kommandoen ovenfor returnerer en verdi på "1" hvis de nødvendige detaljer finnes i XML-dokumentet. Alternativt kan du bruke "eksisterer ()" -kommandoen til å kontrollere at det foreligger en spesiell rekord på følgende måte:

SELECT *

Fra kunde

HVOR customerdata.exist ( '/ root / Customer') = 1