[Somente PaaS]{class="badge informative" title="Aplica-se somente a projetos do Adobe Commerce na nuvem (infraestrutura do PaaS gerenciada pela Adobe) e a projetos locais."}

Alterar ID de incremento

Este artigo discute como alterar a ID de incremento de uma entidade de banco de dados (BD) do Commerce (pedido, fatura, memorando de crédito etc.) em um Commerce Store específico usando a instrução SQL ALTER TABLE.

Versões afetadas

Quando você precisaria alterar a ID de incremento?

Talvez seja necessário alterar a ID de incremento para novas entidades de BD nestes casos:

  • Após uma restauração de backup rígido em um site ativo
  • Alguns registros de pedidos foram perdidos, mas suas IDs já estão sendo usadas por gateways de pagamento (como PayPal) para sua conta de Comerciante atual. Sendo assim, os gateways de pagamento param de processar novos pedidos que têm as mesmas IDs, retornando o erro "ID de fatura duplicada"
INFO
Você também pode corrigir o problema do gateway de pagamento para PayPal, permitindo vários pagamentos por ID de fatura nas Preferências de Recebimento de Pagamento do PayPal. Consulte Solicitação rejeitada do gateway do PayPal - problema de fatura duplicado na Knowledge Base.

Etapas de pré-requisito

  1. Localize lojas e entidades para as quais a nova ID de incremento deve ser alterada.

  2. Conecte-se ao banco de dados MySQL.
    Para o Adobe Commerce na infraestrutura em nuvem, no início, é necessário se conectar usando SSH ao seu ambiente.

  3. Verifique o valor auto_increment atual para a tabela de sequência de entidade usando a seguinte consulta:

    code language-sql
    SHOW TABLE STATUS FROM `{database_name}` WHERE `name` LIKE 'sequence_{entity_type}_{store_id}';
    

Se você estiver verificando um incremento automático para um pedido no armazenamento com ID=1, o nome da tabela será 'sequence_order_1'.

Se o valor da coluna auto_increment for '1234', a próxima ordem colocada no armazenamento com ID=1 terá a ID '#100001234'.

Atualizar entidade para alterar ID de incremento

Atualize a entidade usando a seguinte consulta:

ALTER TABLE sequence_{entity_type}_{store_id} AUTO_INCREMENT = {new_increment_value};
INFO
Importante: o novo valor de incremento deve ser maior que o atual.

Após executar a seguinte query:

ALTER TABLE sequence_order_1 AUTO_INCREMENT = 2000;

O próximo pedido feito na loja com ID=1 terá a ID '#100002000'.

Etapas adicionais recomendadas para ambientes de produção em nuvem

Antes de executar a consulta ALTER TABLE em um ambiente de produção do Adobe Commerce na infraestrutura em nuvem, é altamente recomendável executar estas etapas:

  • Teste todo o procedimento de alteração da ID de incremento no ambiente de preparo
  • [Crie um backup de BD] para restaurar seu BD de Produção em caso de falha

[qualquer versão com suporte]

recommendation-more-help
386822bd-e32c-40a8-81c2-ed90ad1e198c