All Products
Search
Document Center

Tablestore:Menulis satu baris

Last Updated:Aug 13, 2026

Gunakan Tablestore SDK untuk Go untuk menulis atau memperbarui satu baris dalam tabel model Kolom Lebar.

Prasyarat

Pasang Tablestore SDK untuk Go dan inisialisasi klien.

Deskripsi

Panggil PutRow untuk menulis kolom atribut ke baris yang diidentifikasi berdasarkan kunci primernya. Jika baris tersebut sudah ada, versi data baru akan ditambahkan atau menggantikan nilai kolom atribut yang ditentukan. Anda dapat menggunakan Condition untuk mengontrol apakah operasi penulisan dilakukan.

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

Contoh berikut menulis satu baris dengan nilai kunci primer row1 ke tabel example_table.

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)
}

Parameter

PutRowRequest mencakup parameter berikut.

Name

Type

Description

PutRowChange (required)

*PutRowChange

Konfigurasi penulisan baris.

Perubahan baris

PutRowChange mencakup parameter berikut.

Name

Type

Description

TableName (required)

string

Nama tabel.

PrimaryKey (required)

*PrimaryKey

Kunci primer baris tersebut. Nama, urutan, dan tipe kolom kunci primer harus sesuai dengan skema tabel. Untuk membaca atau mengoperasikan baris yang berisi kolom kunci utama auto-increment, tentukan kunci primer lengkapnya.

Columns (optional)

[]AttributeColumn

Kolom atribut yang akan ditulis. Panggil AddColumn agar server menghasilkan versi data, atau AddColumnWithTimestamp untuk menentukan versi secara eksplisit.

Condition (required)

*RowCondition

Kondisi penulisan, yang dapat mencakup kondisi keberadaan baris dan kondisi kolom. Untuk informasi selengkapnya, lihat Gunakan pembaruan bersyarat.

ReturnType (optional)

ReturnType

Tipe nilai kembali. Nilai default: ReturnType_RT_NONE. Atur parameter ini ke ReturnType_RT_PK untuk mengembalikan kunci primer lengkap, misalnya saat Anda memerlukan nilai auto-increment.

TransactionId (optional)

*string

ID transaksi lokal. Tentukan parameter ini hanya untuk operasi penulisan dalam transaksi lokal. Untuk informasi selengkapnya, lihat Gunakan transaksi lokal.

Kolom atribut

Setiap elemen dalam Columns bertipe AttributeColumn dan mencakup parameter berikut.

Name

Type

Description

ColumnName (required)

string

Nama kolom atribut.

Value (required)

interface{}

Nilai kolom atribut. Nilai string, integer, biner, floating-point, dan Boolean didukung.

Timestamp (optional)

int64

Versi data, dalam milidetik. Jika parameter ini tidak ditentukan, server akan menghasilkan versinya.

Respons

PutRowResponse mencakup bidang bisnis berikut.

Field

Type

Description

PrimaryKey

PrimaryKey

Kunci primer lengkap dari baris yang ditulis. Bidang ini dikembalikan hanya ketika ReturnType diatur ke ReturnType_RT_PK.

Contoh

Menentukan versi data

Contoh berikut menggunakan waktu saat ini dan timestamp tertentu sebagai versi data untuk kolom atribut.

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