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

Tablestore:単一行のデータの書き込み

最終更新日:Mar 12, 2026

Node.js SDK で `putRow` を呼び出すことで、Tablestore テーブルに行を挿入します。このメソッドを使用して、バージョン管理機能付きのプライマリキー列と、オプションの属性列を書き込みます。

前提条件

Tablestore クライアントの初期化

メソッド

putRow: function putRow(params, callback)

パラメーターの説明

名前

説明

tableName (必須)

string

テーブルの名前です。

primaryKey (必須)

Array

プライマリキー列の名前と値を含む、プライマリキーの情報です。

  • プライマリキー列のデータ型には、STRING、INTEGER、BINARY があります。

  • 行内のプライマリキーの数と型は、テーブルに定義されているものと一致する必要があります。

  • プライマリキー列が自動インクリメント列の場合、その値をプレースホルダーに設定します。詳細については、「自動採番主キー列」をご参照ください。

attributeColumns (任意)

Array

属性列の名前、値、バージョン番号を含む、属性列の情報です。

  • 属性列のデータ型には、STRING、INTEGER、BINARY、DOUBLE、BOOLEAN があります。

  • バージョン番号はタイムスタンプです。デフォルトでは、システムによって自動的に生成されます。手動で指定することも可能です。詳細については、「データバージョンとライフサイクル」をご参照ください。

condition (必須)

TableStore.Condition

書き込み条件です。詳細については、「条件付き更新」をご参照ください。

returnContent (任意)

object

返されるデータです。

  • returnType (任意) number: 戻り値の型です。

    • TableStore.ReturnType.NONE (デフォルト): データを返しません。

    • TableStore.ReturnType.Primarykey: プライマリキー列を返します。このオプションは、自動採番主キー列に使用します。

    • TableStore.ReturnType.AfterModify: 更新後の列の値を返します。このオプションは、アトミックカウンターに使用します。

transactionId (任意)

string

ローカルトランザクションを一意に識別するローカルトランザクション ID です。詳細については、「ローカルトランザクション」をご参照ください。

次の例では、test_table テーブルに 1 行のデータを書き込みます。この行のプライマリキーの値は row1 です。

var params = {
    tableName: 'test_table',
    primaryKey: [{ 'id': 'row1' }],
    // データを書き込む際の書き込み条件を指定します。TableStore.RowExistenceExpectation.IGNORE は、システムが行の存在をチェックしないことを意味します。
    condition: new TableStore.Condition(TableStore.RowExistenceExpectation.IGNORE, null)
};

client.putRow(params, function (err, data) {
    if (err) {
        console.log('行の書き込みに失敗しました。エラー: ', err);
        return;
    }
    console.log('* RequestId: ', data.RequestId);
    console.log('* 読み取り CU コスト: ', data.consumed.capacityUnit.read);
    console.log('* 書き込み CU コスト: ', data.consumed.capacityUnit.write);
});
  • 属性列を追加します。

    params.attributeColumns = [{ 'col1': 'val1' }];
  • バージョン番号を指定します。各属性列に個別のバージョン番号を割り当てることができます。

    params.attributeColumns = [{ 'col1': 'val1', 'timestamp': Date.now() }];

関連ドキュメント

データのバッチ更新