Condividi tramite


Mapping dei tipi di dati XSD ai tipi di dati XPath (SQLXML 4.0)

Si applica a: SQL Server database SQL di Azure

Quando una query XPath viene eseguita su uno schema XSD e il tipo XSD viene specificato nell'attributo xsd:type , XPath usa il tipo di dati specificato durante l'elaborazione della query.

Il tipo di dati XPath di un nodo viene derivato dal tipo di dati XSD nello schema, come illustrato nella tabella seguente. A scopo illustrativo, viene utilizzato il nodo EmployeeID.

Tipo di dati XSD Tipo di dati XDR Equivalente

Tipo di dati XPath
SQL Server

utilizzata
Base64Binary

HexBinary
Nessuno

bin.base64bin.hex
Non applicabile None

EmployeeID
Booleano 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 number CONVERT(float(53), EmployeeID)
id, idref, idrefsentity, entities, notation, nmtoken, nmtokens, DateTime, string, AnyURI id, idref, idrefsentity, entità, enumerazione, notazione, nmtoken, nmtokens, char, dateTime, dateTime.tz, string, uri, uuid string CONVERT(nvarchar(4000), EmployeeID, 126)
decimal fixed14.4 Non applicabile (non esiste alcun tipo di dati in XPath equivalente al tipo di dati XDR fixed14.4). 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)