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

Tablestore:行の書き込み

最終更新日:Aug 13, 2026

Tablestore SDK for Go を使用して、Wide Column モデルテーブルの行を書き込むか更新します。

前提条件

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

説明

PutRow を呼び出して、プライマリキーで識別される行に属性列を書き込みます。行が存在する場合、指定された属性列に対して新しいデータバージョンが追加または上書きされます。Condition を使用して、書き込みを実行するかどうかを制御できます。

func (tableStoreClient *TableStoreClient) PutRow(request *PutRowRequest) (*PutRowResponse, error)

次のサンプルでは、example_table テーブルに、プライマリキー値が row1 の行を書き込みます。

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

change := &tablestore.PutRowChange{
    TableName:  "example_table",
    PrimaryKey: primaryKey,
}
change.AddColumn("name", "Alice")
change.AddColumn("age", int64(30))
change.SetCondition(tablestore.RowExistenceExpectation_IGNORE)

_, err := client.PutRow(&tablestore.PutRowRequest{PutRowChange: change})
if err != nil {
    log.Fatal(err)
}

パラメータ

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

名前

タイプ

説明

PutRowChange (必須)

*PutRowChange

行の書き込み設定。

行の変更

PutRowChange には以下のパラメーターが含まれています。

名前

タイプ

説明

TableName (必須)

string

テーブル名。

PrimaryKey (必須)

*PrimaryKey

行のプライマリキー。プライマリキー列の名前、順序、タイプは、テーブルスキーマと一致する必要があります。自動採番主キー列を含む行を読み取るか操作する場合は、完全なプライマリキーを指定します。

Columns (オプション)

[]AttributeColumn

書き込む属性列。サーバーにデータバージョンを生成させるには AddColumn を呼び出し、バージョンを指定するには AddColumnWithTimestamp を呼び出します。

Condition (必須)

*RowCondition

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

ReturnType (オプション)

ReturnType

戻り値の型。 デフォルト値: ReturnType_RT_NONE。 自動インクリメント値が必要な場合など、完全なプライマリキーを返すには、このパラメーターを ReturnType_RT_PK に設定します。

TransactionId (オプション)

*string

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

属性列

Columns の各要素は AttributeColumn 型であり、次のパラメーターを含みます。

名前

タイプ

説明

ColumnName (必須)

string

属性列名。

Value (必須)

interface{}

属性列の値。文字列、整数、バイナリ、浮動小数点数、ブール値がサポートされています。

Timestamp (オプション)

int64

データバージョン (ミリ秒単位)。このパラメータが指定されていない場合、サーバーがバージョンを生成します。

応答

PutRowResponse は以下のビジネスフィールドを含みます。

フィールド

タイプ

説明

PrimaryKey

PrimaryKey

書き込まれた行の完全なプライマリキーです。このフィールドは、ReturnType が ReturnType_RT_PK に設定されている場合にのみ返されます。

例

データバージョンの指定

次のサンプルでは、現在の時刻と指定されたタイムスタンプを属性列のデータバージョンとして使用します。

currentTimestamp := time.Now().UnixMilli()
change.AddColumnWithTimestamp("status", "active", currentTimestamp)
change.AddColumnWithTimestamp("score", int64(95), int64(1758249013000))