Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro:SQL Server
Transact-SQL podporuje podmnožinu jazyka XQuery, který se používá k dotazování datového typu XML . Tato implementace XQuery je v souladu s pracovním konceptem XQuery z července 2004. Jazyk je ve vývoji konsorciem W3C (World Wide Web Consortium) se zapojením všech hlavních dodavatelů databází a také Microsoftu. Vzhledem k tomu, že specifikace W3C mohou projít budoucími revizemi před tím, než se stane doporučením W3C, může se tato implementace lišit od konečného doporučení. Toto téma popisuje sémantiku a syntaxi podmnožinu XQuery, která je podporována na SQL Serveru.
Další informace najdete ve specifikaci jazyka W3C XQuery 1.0.
XQuery je jazyk, který může dotazovat strukturovaná nebo částečně strukturovaná data XML. S podporou datového typu XML poskytovaného v databázovém stroji lze dokumenty ukládat do databáze a pak dotazovat pomocí XQuery.
XQuery je založený na existujícím dotazovacím jazyce XPath s přidanou podporou pro lepší iteraci, lepším řazením výsledků a schopností sestavit potřebný KÓD XML. XQuery pracuje s datovým modelem XQuery. Toto je abstrakce dokumentů XML a výsledky XQuery, které lze zadat nebo netypovat. Informace o typu jsou založeny na typech poskytovaných jazykem schématu W3C XML. Pokud nejsou k dispozici žádné informace o zadávání, XQuery zpracuje data jako nezatypovaná. Podobá se tomu, jak XPath verze 1.0 zpracovává XML.
Chcete-li dotazovat instanci XML uloženou v proměnné nebo sloupci typu XML , použijte metody datového typu XML. Můžete například deklarovat proměnnou typu XML a dotazovat ji pomocí metody query() datového typu XML .
DECLARE @x xml
SET @x = '<ROOT><a>111</a></ROOT>'
SELECT @x.query('/ROOT/a')
V následujícím příkladu je dotaz zadán pro sloupec Pokyny typu XML v tabulce ProductModel v databázi AdventureWorks.
SELECT Instructions.query('declare namespace AWMI="https://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ProductModelManuInstructions";
/AWMI:root/AWMI:Location[@LocationID=10]
') as Result
FROM Production.ProductModel
WHERE ProductModelID=7
XQuery obsahuje deklaraci declare namespace``AWMI=...
oboru názvů a výraz dotazu, /AWMI:root/AWMI:Location[@LocationID=10]
.
Všimněte si, že XQuery je určen pro sloupec Pokyny typu XML . Metoda query() datového typu XML slouží k určení XQuery.
Následující tabulka uvádí související témata, která vám můžou pomoct pochopit implementaci XQuery v databázovém stroji.
Téma | Popis |
---|---|
Data XML (SQL Server) | Vysvětluje podporu datového typu XML v databázovém stroji a metody, které můžete použít pro tento datový typ. Datový typ XML tvoří vstupní datový model XQuery, na kterém jsou provedeny výrazy XQuery. |
kolekce schémat XML (SQL Server) | Popisuje, jak lze zadat instance XML uložené v databázi. To znamená, že kolekci schémat XML můžete přidružit ke sloupci typu XML . Všechny instance uložené ve sloupci jsou ověřeny a zadány proti schématu v kolekci a poskytují informace o typu pro XQuery. |
Poznámka:
Organizace této části je založená na pracovní specifikaci konceptu XQuery XQuery (World Wide Web Consortium). Některé diagramy uvedené v této části jsou převzaty z této specifikace. Tato část porovnává implementaci Microsoft XQuery se specifikací W3C, popisuje, jak se Microsoft XQuery liší od W3C a označuje, jaké funkce W3C nejsou podporovány. Specifikace W3C je k dispozici na adrese http://www.w3.org/TR/2004/WD-xquery-20040723.
V této sekci
Téma | Popis |
---|---|
základy XQuery | Poskytuje základní přehled konceptů XQuery a také vyhodnocení výrazů (statický a dynamický kontext), atomizaci, efektivní logickou hodnotu, systém typů XQuery, porovnávání typů sekvence a zpracování chyb. |
výrazy XQuery | Popisuje primární výrazy XQuery, výrazy cesty, sekvenční výrazy, aritmetické porovnání a logické výrazy, konstrukce XQuery, výraz FLWOR, podmíněné a kvantifikované výrazy a různé výrazy u typů sekvence. |
Moduly a prology (XQuery) | Popisuje prolog XQuery. |
funkce XQuery proti datového typu XML | Popisuje seznam podporovaných funkcí XQuery. |
XQuery – operátory proti datovému typu XML | Popisuje podporované operátory XQuery. |
Další ukázkové XQuery pro datový typ XML | Poskytuje další ukázky XQuery. |
Viz také
Data XML (SQL Server)
kolekce schémat XML (SQL Server)
příklady hromadného importu a exportu dokumentů XML (SQL Server)