Mapeando tipos de dados XSD para tipos de dados XPath (SQLXML 4.0)
Aplica-se a: SQL Server Banco de Dados SQL do Azure
Quando uma consulta XPath é executada em um esquema XSD e o tipo XSD é especificado no atributo xsd:type, o XPath usa o tipo de dados especificado ao processar a consulta.
O tipo de dados XPath de um nó é derivado do tipo de dados XSD no esquema, conforme mostra tabela a seguir. (O nó de EmployeeID é usado para fins meramente ilustrativos.)
Tipo de dados XSD | Tipo de dados XDR | Equivalente tipos de dados XPath |
SQL Server conversão que é usada |
---|---|---|---|
Base64Binário HexBinary |
Nenhuma bin.base64bin.hex |
Não aplicável | Nenhum EmployeeID |
Booliano | booleano | booleano | CONVERT(bit, EmployeeID) |
Decimal, inteiro, float, byte, short, int, long, float, double, unsignedByte, unsignedShort, unsignedInt, unsignedLong | número, int, float, i1, i2, i4, i8, r4, r8ui1, ui2, ui4, ui8 | number | CONVERT(float(53), EmployeeID) |
id, idref, idrefsentity, entidades, notação, nmtoken, nmtokens, DateTime, string, AnyURI | id, idref, idrefsentity, entidades, enumeração, notação, nmtoken, nmtokens, char, dateTime, dateTime.tz, string, uri, uuid | cadeia de caracteres | CONVERT(nvarchar(4000), EmployeeID, 126) |
decimal | corrigido14.4 | Não aplicável (não há nenhum tipo de dados no XPath que seja equivalente ao tipo de dados XDR fixed14.4.) | CONVERT(money, EmployeeID) |
date | date | cadeia de caracteres | LEFT(CONVERT(nvarchar(4000), EmployeeID, 126), 10) |
time | time time.tz |
cadeia de caracteres | SUBSTRING(CONVERT(nvarchar(4000), EmployeeID, 126), 1 + CHARINDEX(N'T', CONVERT(nvarchar(4000), EmployeeID, 126)), 24) |