テーブル列
Azure Table Storage カラムはスキーマレスであり、本製品 では以下の二つの方法でスキーマをアンカバーします。
動的スキーマ
テーブルのカラムは最初の数行をスキャンすることで動的に決定されます。RowScanDepth プロパティを変更することで、スキャンする行数を調節することができます。TypeDetectionScheme を"RowScan" に設定すると、行スキャンはデータ型も決定します。次のテーブルは、どのようにAzure Table Storage でサポートされている異なるデータ型が本製品 においてモデル化されているかを説明します。
Azure Table Storage 型 | モデル化された型 | サンプル値 |
Edm.バイナリ | String | 10 |
Edm.Boolean | Boolean | True |
Edm.DateTime | Datetime | 2014-09-23 08:23:45 PM |
Edm.Double | Double | 3.14159265 |
Edm.Int32 | Integer | 123 |
Edm.Int64 | Long | 25000000000 |
Edm.String | String | USA |
静的スキーマ
動的に組成されるスキーマを使う代わりに、自分でスキーマを定義することも可能です。これにより、投影されるカラムを管理できるほか、手動でデータ型を定義することができます。本製品 に含まれるサンプルスキーマを参考にして、お客様自身のスキーマを定義してください。サンプルスキーマファイルの名前を、Azure Table Storage テーブルの名前に合致するように変更し、カラムリストを編集し、お客様自身のテーブルとして利用します。
スキーマレス処理
データを取得するには、手動で定義する場合でも動的に取得する場合でもテーブルのスキーマが必要です。しかしながら、データの挿入、更新、削除ではスキーマに存在しないカラムからのデータが扱われることがあります。まだスキーマテーブルが存在していないカラムのデータ型は、文字列となります。