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

Tablestore:データの削除

最終更新日:Mar 06, 2025

Tablestore は、単一行のデータを削除できる DeleteRow 操作と、複数行のデータを同時に削除できる BatchWriteRow 操作を提供します。

使用上の注意

削除したデータは復元できません。ご注意ください。

前提条件

単一行のデータの削除

DeleteRow 操作を呼び出すことで、単一行のデータを削除できます。削除する行が存在しない場合、テーブルは変更されません。

API 操作

/**
 * 単一行のデータを削除します。
 */
deleteRow(params, callback)                     

パラメーター

パラメーター

必須

説明

tableName

はい

データテーブルの名前。

primaryKey

はい

行のプライマリキー。このパラメーターの値は、各プライマリキー列の名前、タイプ、および値で構成されます。

重要

指定するプライマリキー列の数とタイプは、テーブル内のプライマリキー列の実際の数とタイプと同じである必要があります。

condition

はい

操作を実行するために満たす必要がある条件。行の有無の条件、または列の値に基づく条件を指定できます。詳細については、「条件付き更新の構成」をご参照ください。

サンプルコード

次のサンプルコードは、データテーブルから行を削除する方法の例を示しています。

var TableStore = require('../index.js');
var Long = TableStore.Long;
var client = require('./client');

var params = {
    tableName: "sampleTable",
    condition: new TableStore.Condition(TableStore.RowExistenceExpectation.IGNORE, null),
    primaryKey: [{ 'gid': Long.fromNumber(8) }, { 'uid': Long.fromNumber(80) }]
};

client.deleteRow(params, function (err, data) {
    if (err) {
        console.log('error:', err);
        return;
    }

    console.log('success:', data);
});

                    

詳細なサンプルコードを表示するには、DeleteRow@ GitHub にアクセスしてください。

複数行のデータを同時に削除

  1. ビジネス要件に基づいて適切なメソッドを選択し、削除するデータのプライマリキー情報をクエリします。

    • プライマリキー値が特定の範囲内にあるデータを削除するには、GetRange 操作を呼び出してデータをクエリし、データのプライマリキー情報を取得します。詳細については、「プライマリキー値が特定の範囲内にあるデータの読み取り」をご参照ください。

    • 検索インデックスが作成されたデータテーブルから、特定の条件を満たすデータを削除するには、検索インデックスを使用してデータをクエリし、データのプライマリキー情報を取得します。詳細については、「基本的なクエリ」をご参照ください。

    • データテーブルからすべてのデータを削除するには、データテーブルを削除し、同じ構成のデータテーブルを作成することをお勧めします。

      また、GetRange 操作を呼び出し、開始プライマリキーを INF_MIN に、終了プライマリキーを INF_MAX に設定して、テーブル内のすべてのデータをスキャンすることもできます。この方法では、テーブル内のすべてのデータのプライマリキー情報を取得できます。ただし、これには大量の計算リソースが消費されます。ご注意ください。

  2. 行のプライマリキー情報に基づいて、BatchWriteRow 操作を呼び出して、複数行のデータを同時に削除します。詳細については、「複数行のデータを同時に書き込む」をご参照ください。

関連情報

Time to Live(TTL)は、データの保存期間を指定します。データテーブルに TTL を構成して、期限切れのデータを自動的に削除できます。詳細については、「データバージョンと TTL」をご参照ください。