Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:SQL Server
Azure SQL Database
Felügyelt Azure SQL-példány
SQL-adatbázis a Microsoft Fabricben
A FOR XML mód lehet "RAW", "AUTO", "EXPLICIT" vagy "PATH". Meghatározza az eredményként kapott XML alakját.
Fontos
A XMLDATA irányelv a FOR XML beállításban elavult. Használjon XSD-generációt a RAW és az AUTO mód esetén. Az XMLDATA-direktíva nem cserélődik ki EXPLICT módban. Ez a funkció az SQL Server egy későbbi verziójában lesz eltávolítva. Ne használja ezt a funkciót az új fejlesztési munkában, és tervezze meg a funkciót jelenleg használó alkalmazások módosítását.
Szemantika
Az alábbi alapszintaxis a FOR záradékban (Transact-SQL) található.
[ FOR { BROWSE | <XML> } ]
<XML> ::=
XML
{
{ RAW [ ('ElementName') ] | AUTO }
[
<CommonDirectives>
[ , { XMLDATA | XMLSCHEMA [ ('TargetNameSpaceURI') ]} ]
[ , ELEMENTS [ XSINIL | ABSENT ]
]
| EXPLICIT
[
<CommonDirectives>
[ , XMLDATA ]
]
| PATH [ ('ElementName') ]
[
<CommonDirectives>
[ , ELEMENTS [ XSINIL | ABSENT ] ]
]
}
<CommonDirectives> ::=
[ , BINARY BASE64 ]
[ , TYPE ]
[ , ROOT [ ('RootName') ] ]
Arguments
RAW [('ElementName')]
Felveszi a lekérdezés eredményét, és az eredményhalmaz minden sorát egy általános azonosítóval <row />rendelkező XML-elemgé alakítja át elemcímkeként. Ha ezt az irányelvet használja, megadhat egy nevet a sorelemnek. Az eredményként kapott XML a megadott ElementName értéket fogja használni az egyes sorokhoz létrehozott sorelemként. További információ: A RAW mód használata XML-fájllal.
AUTO
A lekérdezési eredményeket egy egyszerű, beágyazott XML-fában adja vissza. A FROM záradék minden táblája, amelynek legalább egy oszlopa szerepel a SELECT záradékban, XML-elemként jelenik meg. A SELECT záradékban felsorolt oszlopok a megfelelő elemattribútumokhoz vannak megfeleltetve. További információkért lásd: AUTO mód használata az XML-lel.
EGYÉRTELMŰ
Megadja, hogy az eredményül kapott XML-fa alakja explicit módon legyen definiálva. Ennek a módnak a használatával a lekérdezéseket meghatározott módon kell írni, hogy a kívánt beágyazással kapcsolatos további információk explicit módon legyenek megadva. További információ: EXPLICIT mód használata XML-hez.
ELÉRÉSI ÚTVONAL
Egyszerűbb módot kínál az elemek és attribútumok keverésére, valamint további beágyazás bevezetésére az összetett tulajdonságok ábrázolásához. Az XML EXPLICIT módú lekérdezésekkel ilyen típusú XML-lekérdezéseket hozhat létre egy sorkészletből, de a PATH mód egyszerűbb alternatívát kínál az esetleg nehézkes EXPLICIT módú lekérdezések helyett. A PATH mód, a beágyazott FOR XML lekérdezések írásának képességével és az XML típusú példányok visszaadására szolgáló TYPE direktívával együtt lehetővé teszi, hogy kevésbé összetett lekérdezéseket hozzon létre. Alternatívát kínál a legtöbb EXPLICIT módú lekérdezés írására. Alapértelmezés szerint a PATH mód létrehoz egy elemburkolót <row> az eredményhalmaz minden sorához. Igény szerint megadhat egy elemnevet. Ha így tesz, a rendszer a megadott nevet használja a burkolóelem neveként. Ha üres sztringet (FOR XML PATH (''))ad meg, a rendszer nem hoz létre burkolóelemet. További információ: FOR XML használata PATH móddal.
MLDATA
Meghatározza, hogy beágyazott XML-Data Reduced (XDR) sémát kell visszaadni. A séma beágyazott sémaként van előre felfűzve a dokumentumra. Működő minta esetén lásd a nyers mód használata a FOR XML-lel című részt.
XMLSCHEMA
Beágyazott W3C XML-sémát (XSD) ad vissza. Ennek az irányelvnek a megadásakor megadhat egy célnévtér URI-t. Ez a séma megadott névterét adja vissza. További információ: Beágyazott XSD-séma létrehozása. Működő minta esetén lásd a nyers mód használata a FOR XML-lel című részt.
ELEMEK
Ha az ELEMENTS beállítás meg van adva, a rendszer az oszlopokat alelemekként adja vissza. Ellenkező esetben XML-attribútumokra vannak leképezve. Ez a beállítás csak RAW, AUTO és PATH módban támogatott. Ezen irányelv használatakor opcionálisan megadhatja az XSINIL vagy ABSENT értéket. Az XSINIL azt adja meg, hogy a NULL oszlopértékekhez létrejön egy olyan elem, amelynek az xsi:nil attribútuma True értékre van állítva. Alapértelmezés szerint vagy ha a HIÁNYZÓ elem az ELEMekkel együtt van megadva, a NULL értékekhez nem jön létre elem. Működő minta esetén tekintse meg a RAW mód használata az XML-hez és AUTO mód használata az XML-hez című témakört.
BINÁRIS BASE64
Ha a BINARY Base64 beállítás van megadva, a lekérdezés által visszaadott bináris adatok base64 kódolású formátumban lesznek ábrázolva. Ha a bináris adatokat RAW és EXPLICIT módban szeretné lekérni, ezt a beállítást meg kell adni. Auto módban a bináris adatok alapértelmezés szerint hivatkozásként lesznek visszaadva. Működő minta esetén lásd a nyers mód használata a FOR XML-lel című részt.
TYPE
Meghatározza, hogy a lekérdezés az eredményeket az xml típusként adja vissza. További információkért lásd: TYPE utasítás FOR XML-lekérdezésekben.
ROOT [('RootName')]
Megadja, hogy a rendszer egyetlen legfelső szintű elemet adjon hozzá az eredményül kapott XML-fájlhoz. Igény szerint megadhatja a létrehozandó gyökérelem nevét. Az alapértelmezett érték a <root>.
Megjegyzések
Az Azure SQL Database vagy a Fabricben lévő SQL adatbázisok esetén is érvényes SELECT... FOR XML záradék dokumentációját lásd a FOR XML (SQL Server) résznél.