Сопоставление типов данных XSD с типами данных XPath (SQLXML 4.0)

Если запрос XPath выполняется для схемы XSD, а тип XSD задан в атрибуте xsd:type, то XPath использует заданный тип данных при обработке запроса.

Тип данных XPath для узла выводится из типа данных XSD в схеме, как показано в следующей таблице. (Узел EmployeeID используется в демонстрационных целях.)

Тип данных XSD

Тип данных XDR

Эквивалентный

тип данных XPath

SQL Server

преобразование не используется

Base64Binary

HexBinary

None

bin.base64bin.hex

Not applicable

Нет

EmployeeID

Boolean

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, entities, enumeration, notation, nmtoken, nmtokens, char, dateTime, dateTime.tz, string, uri, uuid

string

CONVERT(nvarchar(4000), EmployeeID, 126)

decimal

fixed14.4

н/д (в XPath нет типа данных, эквивалентного типу fixed14.4 XDR)

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)