Сопоставления типов данных в собственных веб-службах с поддержкой XML
В будущей версии Microsoft SQL Server эта возможность будет удалена. Избегайте использования этой возможности в новых разработках и запланируйте изменение существующих приложений, в которых она применяется.
Следующая таблица показывает сопоставления типов SQL типам данных XSD.
Тип SQL |
Тип XSD |
Ограничения типа |
---|---|---|
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 (в режиме совместимости с SQL Server 2005 или более поздними версиями); xsd:long (в режиме совместимости с SQL Server 2000) |
<xsd:maxLength>8</xsd:maxLength> |
TinyInt |
xsd:unsignedByte |
|
UDT (стиль среды CLR) |
xsd:base64Binary (в SQL Server 2005) |
Дополнительные сведения о действительном типе данных обеспечиваются в аспектах. |
UDT (старый стиль) |
Сопоставлен с исходным базовым типом |
|
VarBinary |
xsd:base64Binary |
|
VarChar |
xsd:string |
|
XML |
xsd:any |
|
XML (типизированный) |
xsd:any |
Возвращается XML-схема, к которой типизирован XML-документ. |
Замечания, касающиеся аспектов типов данных параметров в запросах SOAP
При выдаче нерегламентированных запросов можно указывать параметры. В указанные параметры можно добавлять аспекты параметров. Эти аспекты при отправке нерегламентированного запроса могут быть указаны в элементе узла <SqlParameter> или элементе узла <Value>. Сведения об аспектах параметров см. в разделе Структура сообщения SOAP-запроса.
Следующая таблица показывает, каким образом тип xsi:type сопоставляется с типами SQL. Обратите внимание, что тип xsi:type является одним из аспектов, которые можно добавить в элемент узла <Value> при построении запроса SOAP.
Примечание |
---|
Не поддерживаются определяемые пользователем типы данных, добавленные начиная с SQL Server 2008. |
xsi:type |
Тип 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 |
В следующей таблице перечислены все возможные значения аспекта SqlDbType, который может быть добавлен в элемент узла <SqlParameter> при создании нерегламентированного запроса.
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 |