Compartir a través de


Asignar tipos de datos de XSD a tipos de datos de XPath (SQLXML 4.0)

Cuando se ejecuta una consulta XPath con un esquema XSD y se especifica el tipo XSD en el atributo xsd:type, XPath usa el tipo de datos especificado al procesar la consulta.

El tipo de datos XPath de un nodo se deriva del tipo de dato XSD del esquema, como se muestra en la tabla siguiente. (El nodo EmployeeID se usa a modo de ilustración.)

Tipo de datos XSD

Tipo de datos XDR

Equivalente

Tipo de datos XPath

SQL Server

conversión que se usa

Base64Binary

HexBinary

None

bin.base64bin.hex

Not applicable

None

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

No aplicable (no hay ningún tipo de datos de XPath que sea equivalente al tipo de datos fixed14.4 de 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)