Mapping dei tipi di dati in servizi Web XML nativi

Questa caratteristica verrà rimossa a partire da una delle prossime versioni di Microsoft SQL Server. Evitare di utilizzare questa funzionalità in un nuovo progetto di sviluppo e prevedere interventi di modifica nelle applicazioni in cui è attualmente implementata.

Nella tabella seguente viene mostrato il mapping dei tipi SQL in tipi XSD.

Tipo SQL

Tipo XSD

Restrizioni del tipo

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 o una modalità di compatibilità successiva); xsd:long (in modalità di compatibilità di SQL Server 2000)

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

TinyInt

xsd:unsignedByte

 

UDT (stile CLR)

xsd:base64Binary (in SQL Server 2005)

All'interno dei facet sono presenti ulteriori informazioni sul tipo effettivo.

UDT (vecchio stile)

Mappato nel tipo di base originale

 

VarBinary

xsd:base64Binary

 

VarChar

xsd:string

 

XML

xsd:any

 

XML (tipizzato)

xsd:any

Viene restituito lo schema XML in cui è tipizzato il codice XML.

Problemi dei tipi di dati specifici dei facet dei parametri in una richiesta SOAP

Nell'invio di richieste di query ad hoc è possibile specificare dei parametri. Quando si specificano parametri è facoltativamente possibile aggiungere anche facet dei parametri. I facet possono essere specificati sul nodo dell'elemento <SqlParameter> o sul nodo dell'elemento <Value> quando si invia una richiesta di query ad hoc. Per ulteriori informazioni sui facet dei parametri, vedere Struttura dei messaggi di richiesta SOAP.

Nella tabella seguente vengono elencate le modalità di mapping di xsi:type in tipi SQL. Si noti che xsi:type è uno dei facet che è possibile aggiungere al nodo dell'elemento <Value> nella formulazione della richiesta SOAP.

[!NOTA]

I tipi di dati aggiunti a partire da SQL Server 2008 non sono supportati.

xsi:type

Tipo SQL

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

Nella tabella seguente vengono elencati i possibili valori del facet SqlDbType che è possibile aggiungere al nodo dell'elemento <SqlParameter> quando si formula una richiesta di query ad hoc.

BigInt

SmallDateTime

Binary

SmallInt

Bit

SmallMoney

Char

Text

DateTime

Timestamp

Decimal

TinyInt

Float

Udt

Image

UniqueIdentifier

Int

VarBinary

Money

VarChar

NChar

Variant

NText

Xml

NVarChar

Real

Vedere anche

Altre risorse