Use a operação PutRow para inserir uma única linha em uma tabela.
Se a linha não existir, o PutRow a criará. Se a linha já existir, o PutRow a substituirá.
Uma chamada bem-sucedida não retorna erros.
Estrutura da mensagem de solicitação
message PutRowRequest {
required string table_name = 1;
required bytes row = 2; // Plainbuffer-encoded binary data.
required Condition condition = 3;
optional ReturnContent return_content = 4;
optional string transaction_id = 5;
}
|
Nome |
Tipo |
Obrigatório |
Descrição |
|
table_name |
string |
Sim |
Nome da tabela de destino da gravação. |
|
row |
bytes |
Sim |
Dados da linha a gravar, incluindo colunas de chave primária e de atributo, codificados no formato Plainbuffer. Para mais informações, consulte Plainbuffer. |
|
condition |
Sim |
Defina se o Tablestore verifica a existência da linha antes da gravação. Valores válidos:
|
|
|
return_content |
Não |
Tipo de dado retornado após uma gravação bem-sucedida. Apenas a chave primária pode ser retornada. Use este parâmetro com o recurso de coluna de chave primária com incremento automático. |
|
|
transaction_id |
string |
Não |
ID da transação local. Obrigatório para gravar dados em uma transação local. |
Estrutura da mensagem de resposta
message PutRowResponse {
required ConsumedCapacity consumed = 1;
optional bytes row = 2;
}
|
Nome |
Tipo |
Descrição |
|
consumed |
Unidades de capacidade consumidas pela operação. Para obter detalhes, consulte Consumo de unidades de capacidade. |
|
|
row |
bytes |
Dados da linha retornados. Presente apenas quando Os dados retornados são codificados no formato PlainBuffer. Para mais informações sobre o PlainBuffer, consulte PlainBuffer. |
Usar um SDK
Os SDKs a seguir permitem inserir uma única linha de dados.
Consumo de unidades de capacidade
-
Se a linha não existir, o consumo de unidades de capacidade dependerá da verificação de condição.
IGNORE: Consome unidades de capacidade de gravação (WCUs). WCUs = ceil((tamanho da chave primária + tamanho da coluna de atributo) / 4 KB).
EXPECT_NOT_EXIST: Consome WCUs e unidades de capacidade de leitura (RCUs). WCUs = ceil((tamanho da chave primária + tamanho da coluna de atributo) / 4 KB). RCUs = ceil(tamanho da chave primária / 4 KB).
EXPECT_EXIST: A gravação falha e consome 1 WCU e 1 RCU.
-
Se a linha existir, o consumo de unidades de capacidade variará conforme a verificação de condição.
IGNORE: Consome WCUs. WCUs = ceil((tamanho da chave primária + tamanho da coluna de atributo) / 4 KB).
EXPECT_EXIST: Consome WCUs e RCUs. WCUs = ceil((tamanho da chave primária + tamanho da coluna de atributo) / 4 KB). RCUs = ceil(tamanho da chave primária / 4 KB).
EXPECT_NOT_EXIST: A gravação falha e consome 1 WCU e 1 RCU.
Para saber como o tamanho dos dados é calculado, consulte Preços.
Em atualizações condicionais bem-sucedidas, o consumo segue as regras acima. Em caso de falha, a operação consome 1 WCU e 1 RCU.
Se a solicitação atingir o tempo limite com resultados indefinidos, as CUs poderão ou não ser consumidas.
Erros internos (código de status HTTP 5xx) não consomem unidades de capacidade. Todos os outros erros consomem 1 WCU.