Data Type Mappings in Native XML Web Services

The following table shows the mapping of SQL types to XSD types.

SQL type XSD type Type restrictions

BigInt

xsd:long

 

Binary

xsd:base64Binary

 

Bit

xsd:boolean

 

Char

xsd:string

 

DateTime

xsd:dateTime

<xsd:pattern value="((000[1-9])|(00[1-9][0-9])|(0[1-9][0-9]{2})|([1-9][0-9]{3}))-((0[1-9])|(1[0,1,2]))-((0[1-9])|([1,2][0-9])|(3[0,1]))T(([0,1][0-9])|(2[0-3]))(:[0-5][0-9]){2}(\.[0-9]{2}[0,3,7])?" />

<xsd:maxInclusive value="9999-12-31T23:59:59.997"/>

<xsd:minInclusive value="1753-01-01T00:00:00.000"/>

Decimal

xsd:decimal

 

Float(53)

xsd:double

 

GUID (same as UniqueIndentifier)

xsd:string

<xsd:pattern value="([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})|(\{[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}\})" />

Image

xsd:base64Binary

 

Int

xsd:int

 

Money

xsd:decimal

<xsd:totalDigits value="19"/>

<xsd:fractionDigits value="4"/>

<xsd:maxInclusive value="922337203685477.5807"/>

<xsd:minInclusive value="-922337203685477.5808"/>

NChar

xsd:string

 

NText

xsd:string

 

Numeric

xsd:decimal

 

NVarChar

xsd:string

 

Real

xsd:float

 

SmallInt

xsd:short

 

SmallDateTime

xsd:dateTime

<xsd:pattern value="((000[1-9])|(00[1-9][0-9])|(0[1-9][0-9]{2})|([1-9][0-9]{3}))-((0[1-9])|(1[0,1,2]))-((0[1-9])|([1,2][0-9])|(3[0,1]))T(([0,1][0-9])|(2[0-3]))(:[0-5][0-9])(:00)" />

<xsd:maxInclusive value="2079-06-06T23:59:00"/><xsd:minInclusive value="1900-01-01T00:00:00"/>

SmallMoney

xsd:decimal

<xsd:totalDigits value="10"/>

<xsd:fractionDigits value="4"/>

<xsd:maxInclusive value="214748.3647"/><xsd:minInclusive value="-214748.3648"/>

Sql_Variant

xsd:anyType

 

Text

xsd:string

 

TimeStamp

xsd:base64Binary (in SQL Server 2005 compatibility mode); xsd:long (in SQL Server compatibility mode)

<xsd:maxLength>8</xsd:maxLength>

TinyInt

xsd:unsignedByte

 

UDT (CLR style)

xsd:base64Binary (in SQL Server 2005)

Additional information about the actual type is provided within facets.

UDT (old style)

Mapped to original base type

 

VarBinary

xsd:base64Binary

 

VarChar

xsd:string

 

XML

xsd:any

 

XML (typed)

xsd:any

XML schema that the XML is typed to is returned.

Data Type Issues Specific to Parameter Facets in a SOAP Request

When you send ad hoc query requests, you can specify parameters. In specifying parameters, you can also optionally add parameter facets. These facets can be specified on the <SqlParameter> element node or <Value> element node when you send an ad hoc query request. For information about parameter facets, see SOAP Request Message Structure.

The following table shows how xsi:type maps to SQL types. Note that xsi:type is one of the facets that you can add to the <Value> element node in constructing the SOAP request.

xsi:type Sql Type

sqltypes:bigint

BigInt

sqltypes:binary

Binary

sqltypes:bit

Bit

sqltypes:char

Char

sqltypes:datetime

DateTime

sqltypes:decimal

Decimal

sqltypes:float

Float

sqltypes:image

Image

sqltypes:int

Int

sqltypes:money

Money

sqltypes:nchar

NChar

sqltypes:ntext

NText

sqltypes:numeric

Numeric

sqltypes:nvarchar

NVarChar

sqltypes:real

Real

sqltypes:smalldatetime

SmallDateTime

sqltypes:smallint

SmallInt

sqltypes:smallmoney

SmallMoney

sqltypes:text

Text

sqltypes:timestamp

Timestamp

sqltypes:tinyint

TinyInt

sqltypes:uniqueidentifier

UniqueIdentifier

sqltypes:varbinary

VarBinary

sqltypes:varchar

VarChar

sqltypes:xml

Xml

xsd:anyType

Xml

xsd:boolean

Bit

xsd:datetime

DateTime

xsd:decimal

Decimal

xsd:double

Float

xsd:float

Real

xsd:int

Int

xsd:long

BigInt

xsd:short

SmallInt

xsd:string

NVarchar

xsd:unsignedByte

TinyInt

xsd:base64Binary

varbinary

The following table lists the possible values for the SqlDbType facet that you can add to the <SqlParameter> element node when you construct an ad hoc query request.

BigInt

Real

Binary

SmallDateTime

Bit

SmallInt

Char

SmallMoney

DateTime

Text

Decimal

Timestamp

Float

TinyInt

Image

Udt

Int

UniqueIdentifier

Money

VarBinary

NChar

VarChar

NText

Variant

NVarChar

Xml

See Also

Other Resources

Using Native XML Web Services in SQL Server 2005

Help and Information

Getting SQL Server 2005 Assistance