Поделиться через


Типы данных и удаленный доступ к данным

В следующих таблицах приведен перечень поддерживаемых типов данных и сопоставлений типов данных, а также перечень неподдерживаемых типов данных, которые можно использовать при доступе к данным в базе данных MicrosoftSQL Server с помощью удаленного доступа к данным.

Поддерживаемые типы данных

Тип данных SQL Server

Тип данных SQL Server Compact 3.5

bigint (int 8)

bigint

binary (n)

binary (n)

bit

bit

Character (n)(синоним:char (n))

nationalcharacter (n) или ntext

Если размер данных составляет 4000 символов или менее, удаленный доступ к данным сопоставляет данные SQL Servercharacter с данными SQL Server Compactnationalcharacter. В противном случае эти данные сопоставляются с данными SQL Server Compact ntext.

Если размер данных типа ntext превышает размер столбца типа character, при принудительной отправке данных из базы данных SQL Server Compact в базу данных SQL Server возникает сбой.

character varying (n|max) (синонимы:char varyingvarchar (n|max))

national character varying (n) или ntext

Если размер данных составляет 4000 символов или менее, удаленный доступ к данным сопоставляет данные SQL Servercharacter varying с данными SQL Server Compactnational character varying. В противном случае эти данные сопоставляются данным SQL Server Compactntext.

Если размер данных типа character varying (max) превышает размер столбца ntext, при принудительной отправке данных из базы данных SQL Server в базу данных SQL Server Compact возникает сбой.

date

Значение типа nchar(10) в формате «ГГГГ-ММ-ДД»

Примечание

SQL Server Compact хранит расширенные знаки. Поддержка преобразования этого типа была предоставлена в версии SQL Server Compact с пакетом обновления 1 (SP1).

datetime

datetime

datetime2

Значение nvarchar(27) в формате «ГГГГ-ММ-ДД-чч:мм:сс.ннннннн»

Примечание

SQL Server Compact хранит расширенные знаки. Поддержка преобразования этого типа была предоставлена в версии SQL Server Compact 3.5 с пакетом обновления 1 (SP1).

datetimeoffset

Значение nvarchar(34) в формате «ГГГГ-ММ-ДД-чч:мм:сс.ннннннн [+/-] чч:мм»

Примечание

SQL Server Compact хранит расширенные знаки. Поддержка преобразования этого типа была предоставлена в версии SQL Server Compact 3.5 с пакетом обновления 1 (SP1).

decimal

Не поддерживается. Используйте тип numeric.

double precision

double precision

float

float

filestream

image

Примечание

Поддержка преобразования этого типа была предоставлена в версии SQL Server Compact 3.5 с пакетом обновления 1 (SP1).

geography

image

Примечание

Поддержка преобразования этого типа была предоставлена в версии SQL Server Compact 3.5 с пакетом обновления 1 (SP1).

geometry

image

Примечание

Поддержка преобразования этого типа была предоставлена в версии SQL Server Compact 3.5 с пакетом обновления 1 (SP1).

hierarchyid

image

Примечание

Поддержка преобразования этого типа была предоставлена в версии SQL Server Compact 3.5 с пакетом обновления 1 (SP1).

image

image

integer(синоним:int)

integer

money

money

national character (n) (синоним: nchar (n))

national character (n)

national character varying (n)

national character varying (n)

national character varying (max) (синоним: nvarchar(max))

ntext

Если размер данных типа national character varying (max) превышает размер столбца типа ntext, при принудительной отправке данных из базы данных SQL Server в базу данных SQL Server Compact возникает сбой.

ntext

ntext

numeric(синонимы: decimaldec)

numeric

real

real

smalldatetime

datetime

Если точность данных типа datetime превышает точность столбца типа smalldatetime, при отправке данных из базы данных SQL Server Compact в базу данных SQL Server происходит сбой синхронизации.

smallint (int 2)

smallint (int 2)

smallmoney

money

Если точность данных типа money превышает точность столбца типа smallmoney, при отправке данных из базы данных SQL Server Compact в базу данных SQL Server происходит сбой синхронизации.

text

ntext

Если размер данных типа text превышает 1 073 741 823 символа, при отправке данных из базы данных SQL Server в базу данных SQL Server Compact происходит сбой синхронизации.

time

Значение nvarchar(16) в формате «чч:мм:сс.ннннннн»

Примечание

SQL Server Compact хранит расширенные знаки. Поддержка преобразования этого типа была предоставлена в версии SQL Server Compact 3.5 с пакетом обновления 1 (SP1).

tinyint

tinyint

uniqueidentifier

uniqueidentifier

varbinary (n)

varbinary (n)

varbinary (max)

image

Если размер данных типа varbinary (max) превышает размер столбца типа image, при отправке данных из базы данных SQL Server в базу данных SQL Server Compact происходит сбой синхронизации.

XML

ntext

Неподдерживаемые типы данных

Тип данных

Пояснение

sql_variant, UTCDATETIME, UDT

Не поддерживается

Не включайте столбцы этого типа в метод RDA Pull.

Использование типов данных

Если возможно, следует выбирать типы данных, которые поддерживаются как SQL Server, так и SQL Server Compact. При этом удаленный доступ к данным не должен будет выполнять сопоставление данных. Если это невозможно, убедитесь, что приложение выполняет проверку значений, сохраненных в базе данных SQL Server Compact, чтобы гарантировать, что удаленный доступ к данным сможет сопоставить значения SQL Server и SQL Server Compact.

Существующим приложениям, не поддерживавшим изначально типы date, datetime2, datetimeoffset и time, придется обрабатывать данные, сопоставленные с совместимыми типами данных, например nchar и nvarchar.

Не поддерживается запрос данных из таблиц с первичным ключом типа char или varchar длиной более 4000 символов. Столбцы этих типов, имеющие длину более 4000 символов, сопоставляются типу ntext, а для столбцов типа ntext создание первичного ключа невозможно.

Если в базе данных подписки SQL Server Compact какой-либо тип данных был сопоставлен с типом ntext, это сопоставление будет оставаться в силе, пока подписка не будет повторно инициализирована (даже если в SQL Server соответствующий тип будет изменен). Кроме того, если тип данных сопоставлен с типом ntext в SQL Server Compact, все индексы для этого типа данных SQL Server (например, nvarchar (MAX)) не учитываются и не создаются в SQL Server Compact.

См. также

Другие ресурсы

Управляемое сопоставление типов данных (SQL Server Compact)

Типы данных и репликация