このトピックでは、SQL クエリの制限について説明します。
構成の制限
データベース名、テーブル名、および列名は、SQL の予約語またはキーワードにすることはできません。予約語とキーワードの詳細については、予約語とキーワードを参照してください。
項目 | 制限 | 説明 |
データベース名長 | 3~16バイト | データベース名はインスタンス名に対応します。 データベース名には、文字、数字、およびハイフン (-) を使用できます。名前は文字で始まり、ハイフン (-) で終わることはできません。 |
テーブル名長 | 1~255バイト | テーブル名は、データテーブル名またはインデックステーブル名に対応します。 テーブル名には、文字、数字、およびアンダースコア (_) を使用できます。名前は文字またはアンダースコア (_) で始める必要があります。 |
列名長 | 1~255バイト | 列名は、データテーブルまたはインデックステーブルの列名に対応します。 列名には、文字、数字、およびアンダースコア (_) を使用できます。名前は文字またはアンダースコア (_) で始める必要があります。 |
STRING 型のプライマリキー列の値のサイズ | 1 KB | STRING 型のプライマリキー列の値のサイズは 1 KB を超えることはできません。 |
STRING 型の属性列の値のサイズ | 2 MB | STRING 型の属性列の値のサイズは 2 MB を超えることはできません。 |
Binary (Blob) 型のプライマリキー列の値のサイズ | 1 KB | Binary (Blob) 型のプライマリキー列の値のサイズは 1 KB を超えることはできません。 |
Binary (Blob) 型の属性列の値のサイズ | 2 MB | Binary (Blob) 型の属性列の値のサイズは 2 MB を超えることはできません。 |
操作の制限
項目 | 制限 | 説明 |
1 回のスキャンあたりのデータ量 | 128 MB または 100,000 行 | 1 回のスキャンあたりの最大行数は 100,000 行、または 1 回のスキャンあたりの最大データ量は 128 MB です。上限を超えると、システムはエラーを返します。 |
単一実行時間 | 30 秒 | 単一の SQL ステートメントの実行時間は、SQL ステートメントの複雑さとテーブル内のデータ量に関連しています。最大時間は 30 秒です。最大時間超過が発生すると、システムはエラーを返します。 |
列のデータ型と位置 | 変更不可 | 列のデータ型と位置は変更できません。 |
大文字と小文字の区別 | 区別しない | Tablestore のテーブル名と列名は大文字と小文字が区別されます。SQL を使用する場合、Tablestore のテーブル名と列名は照合のために小文字に変換されます。この場合、Tablestore テーブルの Aa 列に対して操作を実行する場合、SQL では AA、aa、aA、または Aa を使用できます。したがって、Tablestore のテーブル名または列名を同時に AA、aa、aA、および Aa にすることはできません。 |