Todos os produtos
Search
Central de documentação

Tablestore:Atualizar as configurações de uma tabela

Última atualização: Jul 03, 2026

Este tópico descreve como atualizar as configurações de tabela com o Tablestore SDK for .NET.

Pré-requisitos

Inicialize um cliente. Para mais informações, consulte Inicializar um cliente Tablestore.

Descrição do método

public UpdateTableResponse UpdateTable(UpdateTableRequest request)

Método assíncrono:

public Task<UpdateTableResponse> UpdateTableAsync(UpdateTableRequest request)

Parâmetros de UpdateTableRequest

  • TableName (obrigatório) string: nome da tabela de dados.

  • TableOptions (opcional) TableOptions: informações de configuração da tabela, que incluem os seguintes parâmetros.

    Parâmetro

    Tipo

    Descrição

    TimeToLive (opcional)

    int

    Tempo de vida (TTL) dos dados na tabela, em segundos. O valor padrão é -1.

    • Se definido como -1, os dados nunca expiram. Caso contrário, o valor mínimo é 86400 (um dia). Dados cujo período de retenção exceda o TTL são excluídos automaticamente.

    • Para usar recursos de índice de pesquisa ou índice secundário, defina este parâmetro como -1 ou configure AllowUpdate como false.

    MaxVersions (opcional)

    int

    Número máximo de versões. O valor padrão é 1.

    • Para usar recursos de índice de pesquisa ou índice secundário, defina este parâmetro como 1.

    DeviationCellVersionInSec (opcional)

    long

    Desvio máximo de versão em segundos.

    • A diferença entre a hora atual do sistema e o timestamp dos dados gravados deve estar dentro do intervalo de desvio máximo de versão. Caso contrário, a gravação falhará.

    • O intervalo de versão válido para dados de coluna de atributo é [max(Data written time - Maximum version offset, Data written time - TTL), Data written time + Maximum version offset).

    AllowUpdate (opcional)

    bool

    Indica se atualizações são permitidas.

    • Se definido como false, não é possível atualizar dados com o método UpdateRow().

  • StreamSpecification (opcional) StreamSpecification: informações de configuração do Stream, que incluem os seguintes parâmetros.

    Parâmetro

    Tipo

    Observação

    EnableStream (obrigatório)

    bool

    Especifica se o Stream deve ser ativado.

    ExpirationTime (opcional)

    int

    Tempo de expiração do Stream, que representa a duração de retenção dos logs incrementais. A unidade é horas. O valor máximo é 168 (sete dias).

    • Quando EnableStream estiver definido como true, especifique ExpirationTime.

  • ReservedThroughput (opcional) CapacityUnit: throughput de leitura e gravação reservado, em CU. Defina este parâmetro com um valor diferente de zero; a configuração entra em vigor apenas para tabelas de dados em instâncias de alto desempenho no modo CU.

Nota

Ao chamar o método UpdateTable(), especifique pelo menos um dos seguintes parâmetros: TableOptions, StreamSpecification ou ReservedThroughput.

Código de exemplo

try
{
    UpdateTableRequest request = new UpdateTableRequest("test_table");

    // Table configuration information.
    TableOptions tableOptions = new TableOptions();
    // Specify the TTL in seconds.
    tableOptions.TimeToLive = 86400;
    // Specify the maximum number of versions.
    tableOptions.MaxVersions = 3;
    // Specify the maximum version offset in seconds.
    tableOptions.DeviationCellVersionInSec = 86400;
    // Specify whether updates are allowed.
    tableOptions.AllowUpdate = false;
    request.TableOptions = tableOptions;

    // Enable Stream and set the Stream validity period to seven days.
    StreamSpecification streamSpecification = new StreamSpecification(true);
    streamSpecification.ExpirationTime = 168;
    request.StreamSpecification = streamSpecification;

    // Set reserved read throughput to 0 CU and reserved write throughput to 0 CU (you can set this parameter to a non-zero value and the setting takes effect only for data tables in high-performance instances in CU mode).
    CapacityUnit reservedThroughput = new CapacityUnit(0, 0);
    request.ReservedThroughput = reservedThroughput;

    // Call the UpdateTable method to modify the table configurations.
    client.UpdateTable(request);
    Console.WriteLine("Update table succeeded.");
}
catch (Exception ex)
{
    Console.WriteLine($"Update table failed, exception:{ex.Message}");
}