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

Tablestore:行の更新

最終更新日:Aug 13, 2026

Tablestore SDK for Go を使用して、Wide Column モデルのテーブルの行の属性列を追加、変更、または削除します。

前提条件

Tablestore SDK for Go をインストールし、クライアントを初期化します。

説明

UpdateRow API を呼び出して、プライマリキーで識別される行の属性列を更新します。データバージョンの追加または上書き、特定のバージョンまたは属性列全体の削除ができます。Condition を使用して、更新を実行するかどうかを制御できます。

func (tableStoreClient *TableStoreClient) UpdateRow(request *UpdateRowRequest) (*UpdateRowResponse, error)

次のサンプルでは、example_table テーブルでプライマリキーの値が row1 の行を更新します。このサンプルでは、status 属性列を変更し、temporary 属性列を削除します。

primaryKey := &tablestore.PrimaryKey{}
primaryKey.AddPrimaryKeyColumn("id", "row1")

change := &tablestore.UpdateRowChange{
    TableName:  "example_table",
    PrimaryKey: primaryKey,
}
change.PutColumn("status", "active")
change.DeleteColumn("temporary")
change.SetCondition(tablestore.RowExistenceExpectation_EXPECT_EXIST)

_, err := client.UpdateRow(&tablestore.UpdateRowRequest{UpdateRowChange: change})
if err != nil {
    log.Fatal(err)
}

パラメーター

UpdateRowRequest には、次のパラメーターが含まれます。

名前

説明

UpdateRowChange (必須)

*UpdateRowChange

行の更新設定。

行の変更

UpdateRowChange には、次のパラメーターが含まれます。

名前

説明

TableName (必須)

string

テーブル名。

PrimaryKey (必須)

*PrimaryKey

行のプライマリキー。プライマリキー列の名前、順序、型は、テーブルスキーマと一致している必要があります。

Columns (必須)

[]ColumnToUpdate

属性列の操作。PutColumnPutColumnWithTimestampDeleteColumn、または DeleteColumnWithTimestamp API を呼び出して操作を追加します。

Condition (任意)

*RowCondition

更新条件。行の存在条件と列条件を含めることができます。詳細については、「条件付き更新の使用」をご参照ください。

TransactionId (任意)

*string

ローカルトランザクション ID。このパラメーターは、ローカルトランザクションで更新する場合にのみ指定します。詳細については、「ローカルトランザクションの使用」をご参照ください。

ReturnType (任意)

ReturnType

アトミックカウンターの戻り値の型。SetReturnIncrementValue API を呼び出すと、このパラメーターは ReturnType_RT_AFTER_MODIFY に設定されます。

ColumnNamesToReturn (任意)

[]string

アトミックカウンター操作後に新しい値が返される属性列の名前。

データバージョンの指定

属性列の特定のバージョンを書き込むには PutColumnWithTimestamp API を、特定のバージョンを削除するには DeleteColumnWithTimestamp API を呼び出します。

timestamp := time.Now().UnixMilli()
change.PutColumnWithTimestamp("score", int64(95), timestamp)
change.DeleteColumnWithTimestamp("legacy_status", timestamp)