Teilen über


Zuordnen von XSD-Datentypen zu XPath-Datentypen (SQLXML 4.0)

Gilt für: SQL Server Azure SQL-Datenbank

Wenn eine XPath-Abfrage für ein XSD-Schema ausgeführt wird und der XSD-Typ im xsd:type-Attribut angegeben wird, verwendet XPath den Datentyp, der beim Verarbeiten der Abfrage angegeben wird.

Der XPath-Datentyp eines Knotens wird vom XSD-Datentyp in dem Schema abgeleitet, wie in der folgenden Tabelle dargestellt. (Der Knoten "EmployeeID" dient zur Veranschaulichung.)

XSD-Datentyp XDR-Datentyp Entsprechung

XPath-Datentyp
SQL Server

verwendete Konvertierung
Base64Binary

HexBinary
None

bin.base64bin.hex
Nicht zutreffend Keine

EmployeeID
Boolescher Wert boolean boolean CONVERT(bit, EmployeeID)
Decimal, integer, float, byte, short, int, long, float, double, unsignedByte, unsignedShort, unsignedInt, unsignedLong number, int, float,i1, i2, i4, i8,r4, r8ui1, ui2, ui4, ui8 Zahl CONVERT(float(53), EmployeeID)
id, idref, idrefsentity, entities, notation, nmtoken, nmtokens, DateTime, string, AnyURI id, idref, idrefsentity, entities, enumeration, notation, nmtokens, char, dateTime, dateTime.tz, string, uri, uuid string CONVERT(nvarchar(4000), EmployeeID, 126)
decimal fixed14.4 Nicht zutreffend (Es gibt keinen Datentyp in XPath, der dem XDR-Datentyp fixed14.4 entspricht.) CONVERT(money, EmployeeID)
date date string LEFT(CONVERT(nvarchar(4000), EmployeeID, 126), 10)
time time

time.tz
string SUBSTRING(CONVERT(nvarchar(4000), EmployeeID, 126), 1 + CHARINDEX(N'T', CONVERT(nvarchar(4000), EmployeeID, 126)), 24)