Ao definir uma coluna de chave primária que não seja uma partition key como coluna de auto-incremento, não é necessário fornecer um valor para ela ao gravar dados. Tablestore gera automaticamente um valor único e estritamente crescente dentro de cada partition key.
Recursos
Uma coluna de chave primária com auto-incremento tem as seguintes características:
Os valores de uma coluna de auto-incremento são únicos e estritamente crescentes dentro de uma partition key, mas não há garantia de que sejam consecutivos.
O tipo de dado de uma coluna de auto-incremento é um inteiro com sinal de 64 bits.
As colunas de auto-incremento são definidas no nível da tabela de dados. Uma instância pode conter tabelas de dados com e sem colunas de auto-incremento.
Este recurso não afeta as regras para atualizações condicionais. Para mais informações, consulte Conditional update.
Notas de uso
Cada tabela de dados pode ter no máximo uma coluna de chave primária com auto-incremento. Uma partition key não pode ser definida como coluna de auto-incremento.
A coluna de auto-incremento só pode ser definida no momento da criação da tabela de dados. Não é possível adicioná-la a uma tabela já existente.
Apenas uma coluna de chave primária do tipo inteiro pode ser definida como coluna de auto-incremento. O valor gerado pelo sistema para essa coluna é um inteiro com sinal de 64 bits.
Colunas de atributo não podem ser definidas como colunas de auto-incremento.
Ao gravar dados em uma tabela com coluna de chave primária com auto-incremento, recupere e armazene o valor gerado para essa coluna, pois ele será necessário em atualizações ou leituras posteriores.
<!--@li {"id="404b0410640xa"}-->
O recurso de coluna de chave primária com auto-incremento e o recurso de transação local não podem ser usados simultaneamente.
Operações de API
Esta tabela descreve as operações de API relacionadas ao recurso de coluna de chave primária com auto-incremento.
|
API |
Descrição |
|
Para usar este recurso, defina uma coluna de chave primária que não seja uma partition key como coluna de auto-incremento ao criar a tabela de dados. |
|
|
Após a criação da tabela de dados, não é possível usar a operação de API UpdateTable para redefinir uma coluna de chave primária como coluna de auto-incremento. |
|
|
Ao gravar dados, não é necessário especificar um valor para a coluna de auto-incremento, pois o Tablestore gera um automaticamente. Para obter a chave primária completa, defina o parâmetro ReturnType como RT_PK. Em seguida, use a chave primária para consultar dados por meio da operação de API GetRow. Importante
Se precisar atualize uma linha, mas não tiver armazenado o valor da chave primária com auto-incremento, use primeiro a operação de API GetRange para recuperar a chave primária completa antes de realizar a atualização. |
|
|
A operação de API GetRow requer uma chave primária completa. Obtenha a chave primária completa definindo o parâmetro ReturnType como RT_PK na requisição PutRow, UpdateRow ou BatchWriteRow. Importante
Caso o valor da coluna de chave primária com auto-incremento não tenha sido armazenado durante a gravação, ainda é possível ler um intervalo de dados com base na primeira coluna de chave primária. Para mais informações, consulte Read a range of data. |
|
Como usar
Console
CLI
SDKs
Faturamento
Este recurso não afeta as regras de faturamento existentes. O retorno dos dados da chave primária não consome unidades de capacidade de leitura adicionais.