Sdílet prostřednictvím


S POUŽITÍM XMLNAMESPACES

platí pro:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL databáze v Microsoft Fabric

Deklaruje jeden nebo více XML jmenných prostorů.

Transact-SQL konvence syntaxe

Syntaxe

  
WITH XMLNAMESPACES ( <XML namespace declaration item>  
[ { , <XML namespace declaration item> }...] )   
  
<XML namespace declaration item> ::=  
<xml_namespace_uri> AS <xml_namespace_prefix>  
| <XML default namespace declaration item>  
<xml_namespace_uri> ::= <character string literal>  
  
<xml_namespace_prefix> ::= <identifier>  
  
<XML default namespace declaration item> ::=  
DEFAULT <xml_namespace_uri>  
  

Arguments

xml_namespace_uri
Uniformní identifikátor zdroje (URI), který identifikuje XML jmenný prostor deklarovaný. xml_namespace_uri je SQL řetězec.

xml_namespace_prefix
Specifikuje prefix, který má být mapován a přiřazen k hodnotě URI jmenného prostoru specifikované v xml_namespace_uri. xml_namespace_prefix musí být identifikátor SQL Serveru.

Poznámky

Když použijete klauzuli WITH XMLNAMESPACES ve příkazu, který obsahuje také společný tabulkový výraz, musí klauzule WITH XMLNAMESPACES předcházet společnému tabulkovému výrazu v daném příkazu.

Následující jsou obecná syntaktická pravidla, která platí při použití klauzule WITH XMLNAMESPACES:

  • Každá deklarace XML jmenného prostoru musí obsahovat alespoň jeden výchozí XML objekt deklarace jmenného prostoru.

  • Každý XML prefix jmenného prostoru musí být nekolonizovaný název (NCName), ve kterém dvojtečka (:) není součástí jména.

  • Nemůžete definovat prefix jmenného prostoru dvakrát.

  • XML jmenné prostory a URI jsou citlivé na velká písmena.

  • Prefix xmlns XML jmenného prostoru nelze deklarovat.

  • Prefixu xml XML jmenného prostoru nelze přepsat jiným jmenným prostorem, kromě jmenných prostorů URI 'http://www.w3.org/XML/1998/namespace', a tento URI nelze přiřadit jinou předponou.

  • Prefix xsi XML jmenného prostoru nelze znovu deklarovat, když je na dotazu použita direktiva ELEMENTS XSINIL.

  • Pro použití standardního jmenného prostoru XSI není nutné deklarovat 'http://www.w3.org/2001/XMLSchema-instance''. Pokud není specifikováno, je implicitně přidáván procesorem XML/XPATH a výrazy xpath mohou používat prefix xsi, pokud je schéma 'http://www.w3.org/2001/XMLSchema-instance' správně deklarováno v dokumentu xml.

  • Hodnoty řetězců URI jsou kódovány podle aktuální kódové stránky pro kolaci databáze a interně překládány do Unicode.

  • XML jmenný prostor URI bude stlačen bílým mezerou podle pravidel pro kolaps XSD pro xs:anyURI. Dále je třeba poznamenat, že na XML URI hodnotách se neprovádí žádná entitizace ani deentitizace.

  • URI jmenného prostoru XML bude kontrolováno na neplatné znaky XML 1.0 a pokud je nalezena chyba (například U+0007).

  • XML jmenný prostor URI (po shrnutí všech bílých mezer) nemůže být řetězec nulové délky, jinak dojde k chybě "neplatné prázdné jmenné prostorové URI".

  • Klíčové slovo XMLNAMESPACES je vyhrazeno v kontextu klauzule WITH.

Examples

Například viz Přidat jmenné prostory do dotazů pomocí WITH XMLNAMESPACES.

Viz také

referenční příručka jazyka XQuery (SQL Server)