すべてのプロダクト
Search
ドキュメントセンター

Tablestore:マッピングテーブルの作成

最終更新日:May 24, 2025

CREATE TABLE 文を実行して、既存のテーブルまたは検索インデックスのマッピングテーブルを作成できます。 マッピングテーブルを作成する際は、ビジネス要件に基づいて、フィールド名と型、プライマリキー情報、およびデータクエリに使用する実行エンジンを指定します。

前提条件

パラメーター

パラメーター

説明

query

SQL 文。 必要な機能に基づいてこのパラメーターを設定します。

説明

このトピックでは、テーブルのマッピングテーブルを作成する方法について説明します。 検索インデックスのマッピングテーブルを作成する場合は、サンプルコードの SQL 文を、検索インデックスのマッピングテーブルを作成するために使用する SQL 文に置き換えてください。

次の例は、create table test_table (pk varchar(1024), long_value bigint, double_value double, string_value mediumtext, bool_value bool, primary key(pk)) 文を使用して、test_table テーブルのマッピングテーブルを作成する方法を示しています。

const params = {
  query: "create table test_table (pk varchar(1024), long_value bigint, double_value double, string_value mediumtext, bool_value bool, primary key(pk))",
}

client.sqlQuery(params, function (err, data) {
  if (err) {
    console.log('sqlQuery error:', err.toString()); // sqlQuery エラー
  } else {
    console.log('sqlQuery success:', data); // sqlQuery 成功
  }
});

FAQ

マッピングテーブルを作成するときに「Table 'instancename.tablename' doesn't exist ?」というエラーメッセージが返された場合はどうすればよいですか?

  • 考えられる原因

    マッピングテーブルを作成する対象のテーブルが存在しません。

  • 解決策

    SQL で CREATE TABLE 文を実行して、既存のテーブルまたは検索インデックスに対してのみマッピングテーブルを作成できます。 マッピングテーブルを作成する対象のテーブルまたは検索インデックスが存在することを確認してください。

マッピングテーブルを作成するときに「Table 'instancename.tablename' already exist?」というエラーメッセージが返された場合はどうすればよいですか?

  • 考えられる原因

    テーブルのマッピングテーブルが作成されています。

    • ユーザーが手動でテーブルのマッピングテーブルを作成しました。

    • Tablestore がテーブルのマッピングテーブルを自動的に作成しました。 データテーブルのマッピングテーブルを作成せずに、SQL 文(DESCRIBE、SELECT など)を直接使用してデータテーブルのデータをクエリすると、Tablestore はデータテーブルのマッピングテーブルを自動的に作成します。 自動的に作成されたマッピングテーブルには、データテーブルのプライマリキー列と事前定義列のみが含まれます。 マッピングテーブルの属性列を更新することはできません。

  • 解決策

    DESCRIBE 文を実行して、マッピングテーブルのスキーマをクエリできます。 スキーマがビジネス要件を満たしていない場合は、マッピングテーブルの属性列を更新できます。 マッピングテーブルが Tablestore によって自動的に作成された場合、属性列を更新することはできません。 この場合、マッピングテーブルを削除した後にビジネスに影響がないことが確実であれば、マッピングテーブルを削除して新しいマッピングテーブルを作成できます。

説明

SQL クエリ機能の一般的なエラーと解決策については、「SQL クエリの一般的なエラーをトラブルシューティングするにはどうすればよいですか?」をご参照ください。

参照