データ型と RDA
次の表に、リモート データ アクセス (RDA) で Microsoft SQL Server データベースのデータにアクセスする際の、サポートされるデータ型とデータ型のマッピング、およびサポートされないデータ型を示します。
サポートされるデータ型
SQL Server のデータ型 | SQL Server Compact Edition のデータ型 |
---|---|
bigint (int 8) |
bigint |
binary (n) |
binary (n) |
bit |
bit |
Character (n)(シノニム :char (n)) |
national character (n) または ntext データの長さが 4,000 文字以下の場合、RDA により SQL Server の character データが SQL Server 2005 Compact Edition (SQL Server Compact Edition) の national character 型にマップされます。それ以外の場合、この型のデータは SQL Server Compact Edition の ntext 型にマップされます。 ntext データの長さが character 列の列の長さを超える場合、データが SQL Server Compact Edition から SQL Server に送信された時点でプッシュが失敗します。 |
character varying (n|max) (シノニム : char varyingvarchar (n|max)) |
national character varying (n) または ntext データの長さが 4,000 文字以下の場合、RDA により SQL Server の character varying データが SQL Server Compact Edition の national character varying 型にマップされます。それ以外の場合、この型のデータは SQL Server Compact Edition ntext 型にマップされます。 character varying (max) データの長さが ntext 列の長さを超える場合、データが SQL Server から SQL Server Compact Edition に送信された時点でプッシュが失敗します。 |
datetime |
datetime |
decimal |
サポートされていません。numeric 型を使用してください。 |
double precision |
double precision |
float |
float |
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 Edition に送信された時点でプッシュが失敗します。 |
ntext |
ntext |
numeric (シノニム : decimal, dec) |
numeric |
real |
real |
smalldatetime |
datetime datetime データの有効桁数が smalldatetime 列の有効桁数を超える場合、データが SQL Server Compact Edition から SQL Server に送信された時点で同期が失敗します。 |
smallint (int 2) |
smallint (int 2) |
smallmoney |
money money データの有効桁数が smallmoney 列の有効桁数を超える場合、データが SQL Server Compact Edition から SQL Server に送信された時点で同期が失敗します。 |
sql_variant |
RDA ではサポートされていません。 |
text |
ntext text データの長さが 1,073,741,823 文字を超える場合、データが SQL Server から SQL Server Compact Edition に送信された時点で同期が失敗します。 |
tinyint |
tinyint |
uniqueidentifier |
uniqueidentifier |
varbinary (n) |
varbinary (n) |
varbinary (max) |
image varbinary (max) データの長さが image 列の長さを超える場合、データが SQL Server から SQL Server Compact Edition に送信された時点で同期が失敗します。 |
XML |
ntext |
サポートされないデータ型
データ型 | 説明 |
---|---|
sql_variant, DATE, TIME, UTCDATETIME, FILESTREAM, UDT |
サポートされていません。 このデータ型の列を RDA Pull メソッドに含めないようにしてください。 |
データ型の使用
可能な限り、SQL Server と SQL Server Compact Edition の両方でサポートされているデータ型を選択してください。そうすれば、RDA ではデータのマッピングを実行する必要がありません。これができない場合は、SQL Server Compact Edition に格納された値をアプリケーションで検証し、RDA によって SQL Server と SQL Server Compact Edition との間でこれらの値をマップできることを確認する必要があります。
長さが 4,000 文字を超える char 型または varchar 型の主キーを持つテーブルからは、データをプルできません。このように文字の長さが 4,000 文字を超える列の型は ntext 型にマップされますが、ntext 型の列に主キーを作成することはできません。
あるデータ型が SQL Server Compact Edition のサブスクリプション データベースの ntext 型にマップされると、SQL Server で型が変更されたとしても、そのデータ型はサブスクリプションが再初期化されるまで、ntext 型のまま保持されます。また、あるデータ型が SQL Server Compact Edition の ntext 型にマップされると、SQL Server のデータ型 (たとえば nvarchar (MAX)) のインデックスはすべて無視され、SQL Server Compact Edition でこの型のインデックスが作成されることもありません。
参照
概念
その他の技術情報
データ型マッピング (SQL Server Compact Edition)