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


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

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

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

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

bigint (int 8)

bigint

binary (n)

binary (n)

bit

bit

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

national character (n) или ntext

Если размер данных составляет 4000 символов или менее, удаленный доступ к данным сопоставляет данные SQL Server character с данными SQL Server Compact national character. В противном случае эти данные сопоставляются с данными 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 Server character varying с данными SQL Server Compact national character varying. В противном случае эти данные сопоставляются данным SQL Server Compact ntext.

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

date

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

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

datetime

datetime

datetime2

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

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

datetimeoffset

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

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

decimal

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

double precision

double precision

float

float

filestream

image

ms173018.note(ru-ru,SQL.100).gifПримечание.
Поддержка преобразования этого типа была предоставлена в версии SQL Server Compact 3.5 с пакетом обновления 1 (SP1).

geography

image

ms173018.note(ru-ru,SQL.100).gifПримечание.
Поддержка преобразования этого типа была предоставлена в версии SQL Server Compact 3.5 с пакетом обновления 1 (SP1).

geometry

image

ms173018.note(ru-ru,SQL.100).gifПримечание.
Поддержка преобразования этого типа была предоставлена в версии SQL Server Compact 3.5 с пакетом обновления 1 (SP1).

hierarchyid

image

ms173018.note(ru-ru,SQL.100).gifПримечание.
Поддержка преобразования этого типа была предоставлена в версии 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(синонимы: decimal dec)

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) в формате «чч:мм:сс.ннннннн»

ms173018.note(ru-ru,SQL.100).gifПримечание.
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)

Справка и поддержка

Получение помощи (SQL Server Compact 3.5 с пакетом обновления 1)