Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Gäller för:SQL Server
Azure SQL Database
Azure SQL Managed Instance
SQL-databas i Microsoft Fabric
Deklarerar ett eller flera XML-namnrymder.
Transact-SQL syntaxkonventioner
Syntax
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
En Uniform Resource Identifier (URI) som identifierar det XML-namnrymd som deklareras.
xml_namespace_uri är en SQL-sträng.
xml_namespace_prefix
Specificerar ett prefix som ska mappas och associeras med namnrymdens URI-värde som anges i xml_namespace_uri.
xml_namespace_prefix måste vara en SQL Server-identifierare.
Anmärkningar
När du använder WITH XMLNAMESPACES-klausulen i ett uttryck som också inkluderar ett uttryck för en gemensam tabell, måste satsen WITH XMLNAMESPACES föregå uttrycket i den gemensamma tabellen i satsen.
Följande är allmänna syntaxregler som gäller när du använder WITH XMLNAMESPACES-klausulen:
Varje XML-namnrymdedeklaration måste innehålla minst ett XML-standarddeklarationsobjekt för namnrymd.
Varje XML-namnrymdsprefix som används måste vara ett icke-koloniserat namn (NCName) där kolontecknet (:) inte ingår i namnet.
Du kan inte definiera ett namnrymdsprefix två gånger.
XML-namnrymdsprefix och URI:er är kasuskänsliga.
Prefixet
xmlnsXML-namnrymder kan inte deklareras.XML-namnrymdsprefixet
xmlkan inte åsidosättas med ett namnrymd, annat än namnrymdernas URI'http://www.w3.org/XML/1998/namespace', och denna URI som inte kan tilldelas ett annat prefix.Prefixet
xsiXML-namnrymder kan inte deklareras om när ELEMENTS XSINIL-direktivet används på frågan.Det är inte nödvändigt att deklarera 'http://www.w3.org/2001/XMLSchema-instance' för att använda xsi-standardnamnrymden. Det läggs implicit till av XML/XPATH-processorn om det inte specificeras och xpath-uttryck kan använda xsi-prefixet så länge 'http://www.w3.org/2001/XMLSchema-instance'-schemat är korrekt deklarerat i xml-dokumentet.
URI-strängvärden kodas enligt den aktuella databasens kodsida och översätts internt till Unicode.
XML-namnrymdens URI kommer att kollapsas med vitfält enligt XSD:s regler för kollapsning av vitrymdsfält som används för xs:anyURI. Observera också att ingen entitisering eller deidentitisering utförs på XML-namnrymdens URI-värden.
XML-namnrymdens URI kommer att kontrolleras för XML 1.0-tecken som inte är giltiga, och ett fel kommer att uppstå om ett sådant hittas (såsom U+0007).
XML-namnrymdens URI (efter att allt vitt utrymme kollapsas) kan inte vara en sträng av nolllängd eller då uppstår ett fel med "ogiltig tom namnrymds-URI".
XMLNAMESPACES-nyckelordet är reserverat i kontexten av WITH-satsen.
Examples
För exempel, se Lägg till namnrymder till frågor med MED XMLNAMNSRYMDER.