データ型
Microsoft SQL Server Compact 3.5 データベースのテーブル内の各列では、一連のデータ型がサポートされており、列で保持できるデータの型を指定できます。
注意
Microsoft SQL Server 2005 と SQL Server Compact 3.5 の間では、関数の実行結果としてオーバーフローまたはアンダーフローが発生したときにデータ型を変更する方法が若干異なる場合があります。
SQL Server Compact 3.5 では、以下のデータ型がサポートされています。
データ型 | 説明 |
---|---|
bigint |
-2^63 (-9,223,372,036,854,775,808) から 2^63-1 (9,223,372,036,854,775,807) までの整数データを格納するデータ型です。記憶域のサイズは 8 バイトです。 |
integer |
-2^31 (-2,147,483,648) から 2^31-1 (2,147,483,647) までの整数データを格納するデータ型です。 記憶域のサイズは 4 バイトです。 |
smallint |
-32,768 から 32,767 までの整数データを格納するデータ型です。記憶域のサイズは 2 バイトです。 |
tinyint |
0 から 255 までの整数データを格納するデータ型です。記憶域のサイズは 1 バイトです。 |
bit |
値が 1 または 0 の整数データを格納するデータ型です。 記憶域のサイズは 1 ビットです。 |
numeric (p, s) Synonyms: decimal(p,s) and dec (p,s) |
-10^38+1 から 10^38-1 までの固定された有効桁数と小数点以下桁数の数値データを格納するデータ型です。p 変数では、1 から 38 までの範囲で有効桁数を指定します。s 変数では、0 から p までの範囲で小数点以下桁数を指定します。 記憶域のサイズは 19 バイトです。 |
money |
通貨単位の 10,000 分の 1 までの精度で、-2^63/10000 (-922,337,203,685,477.5808) から 2^63-1 (922,337,203,685,477.5807) までの金額データ値を格納するデータ型です。記憶域のサイズは 8 バイトです。 |
float |
-1.79E + 308 から 1.79E + 308 までの浮動小数点数を格納するデータ型です。 記憶域のサイズは 8 バイトです。 |
real |
-3.40E + 38 から 3.40E + 38 までの浮動小数点数を格納するデータ型です。 記憶域のサイズは 4 バイトです。 |
datetime |
300 分の 1 秒、つまり 3.33 ミリ秒の精度で、1753 年 1 月 1 日から 9999 年 12 月 31 日までの日付と時刻のデータを格納するデータ型です。値は .000、.003、または .007 ミリ秒の単位になるように丸められます。 2 つの 4 バイト整数として格納されます。最初の 4 バイトは、base date である 1900 年 1 月 1 日からの日数、またはこの日までの日数を格納します。基準日とは、システムが参照する日付です。datetime 型の値には、1753 年 1 月 1 日より前の日付を使用できません。もう一方の 4 バイトは、午前 0 時から数えた時間をミリ秒単位で格納します。秒の有効範囲は 0 から 59 までです。
形式 例
yyyy/mm/ddhh:mm:ss 1947/08/15 03:33:20
mm/dd/yyyyhh:mm:ss 04/15/1947 03:33:20
dd mmm yyyy hh:mm:ss 15 Jan 1947 03:33:20
dd mmmm yyyy h:mm:ss 15 January 1947 03:33:20
|
national character(n) Synonym:nchar(n) |
4,000 文字以内の固定長の Unicode データを格納するデータ型です。既定の長さは 1 です。記憶域のサイズは、入力した文字数の 2 倍のバイト数です。 |
national character varying(n) Synonym:nvarchar(n) |
長さが 1 から 4,000 文字までの可変長の Unicode データを格納するデータ型です。既定の長さは 1 です。記憶域のサイズは、入力した文字数の 2 倍のバイト数です。 |
ntext¹ |
(2^30 -2)/2 (536,870,911) 文字以内の可変長の Unicode データを格納するデータ型です。記憶域のサイズは、入力した文字数の 2 倍のバイト数です。
メモ:
ntext データ型は、文字列関数ではサポートされません。
|
nchar |
n 文字の固定長の Unicode 文字データを格納するデータ型です。n の有効な値の範囲は 1 から 4,000 までです。記憶域のサイズは、n バイトの 2 倍です。 |
binary(n) |
8,000 バイト以内の固定長のバイナリ データを格納するデータ型です。既定の長さは 1 です。 記憶域のサイズは、型で宣言された長さのバイト数で固定されます。 |
varbinary(n) |
8,000 バイト以内の可変長のバイナリ データを格納するデータ型です。既定の長さは 1 です。 記憶域のサイズは変化します。このサイズは、値の長さのバイト数になります。 |
image¹ |
2^30 -1 (1,073,741,823) バイト以内の可変長のバイナリ データを格納するデータ型です。 記憶域は、値の長さのバイト数になります。 |
uniqueidentifier |
グローバル一意識別子 (GUID) を格納するデータ型です。記憶域のサイズは 16 バイトです。 |
IDENTITY [(s, i)] |
これはデータ列のプロパティであり、独立したデータ型ではありません。 ID 列には、integer 型のデータ列のみを使用できます。1 つのテーブルでは、ID 列を 1 つしか作成できません。シード値と増分値を指定することができ、列を更新することはできません。 s (seed) = 開始値 i (increment) = 増分値 |
ROWGUIDCOL |
これはデータ列のプロパティであり、独立したデータ型ではありません。uniqueidentifier データ型を使用して定義したテーブルに含まれる列です。1 つのテーブルでは、ROWGUIDCOL 列を 1 つしか作成できません。 |
Timestamp/rowversion |
自動的に生成される一意のバイナリ値です。 記憶域のサイズは 8 バイトです。 |
¹SQL Server Compact 3.5 では、256 バイトを超える ntext 型と image 型のデータは、新しいデータ ページに格納されます。SQL Server Compact 3.5 データベースはバイトではなくページを基準として最適化されるので、このことがデータベースの圧縮度に影響する場合があります。
SQL Server Compact 3.5 での変換に必要な SQL Server 2008 のデータ型の詳細については、「SQL Server Compact と SQL Server の相違点」を参照してください。