Toename-id wijzigen
In dit artikel wordt besproken hoe u de verhogings-id voor een Commerce-database-entiteit (volgorde, factuur, creditnota, enzovoort) op een bepaalde Commerce-winkel kunt wijzigen met de SQL-instructie ALTER TABLE .
Betrokken versies
- Adobe Commerce (op locatie): 2.x.x
- Adobe Commerce op cloud-infrastructuur: 2.x.x
- MySQL: om het even welke gesteunde versie
Wanneer moet u de increment-id wijzigen?
In de volgende gevallen moet u mogelijk de increment-id wijzigen voor nieuwe DB-entiteiten:
- Na een harde back-up herstellen op een live site
- Sommige transactiebestanden zijn verloren gegaan, maar hun id's worden al gebruikt door betalingsgateways (zoals PayPal) voor uw huidige Merchant-account. In dat geval verwerken de betaalgateways geen nieuwe orders die dezelfde id's hebben, en wordt de fout "Dubbele factuur-id" geretourneerd
Vereiste stappen
-
Zoek opslagruimten en entiteiten waarvoor de nieuwe verhogings-id moet worden gewijzigd.
-
Maak verbinding met uw MySQL-database.
Voor Adobe Commerce op cloudinfrastructuur moet u eerst verbinding maken met de omgeving door middel van SSH. -
Controleer de huidige
auto_incrementwaarde voor de lijst van de entiteitopeenvolging gebruikend de volgende vraag:code language-sql SHOW TABLE STATUS FROM `{database_name}` WHERE `name` LIKE 'sequence_{entity_type}_{store_id}';
Als u een automatische verhoging voor een orde op de opslag met ID=1 controleert, zou de lijstnaam "sequence_order_1"zijn.
Als de waarde van de kolom auto_increment '1234' is, heeft de volgende volgorde die bij ID=1 in de winkel wordt geplaatst, de ID '#100001234'.
Entiteit bijwerken om increment-id te wijzigen
Werk de entiteit bij met behulp van de volgende query:
ALTER TABLE sequence_{entity_type}_{store_id} AUTO_INCREMENT = {new_increment_value};
Na het uitvoeren van de volgende query:
ALTER TABLE sequence_order_1 AUTO_INCREMENT = 2000;
De volgende volgorde die met ID=1 bij de winkel wordt geplaatst, heeft de id '#100002000'.
Aanvullende aanbevolen stappen voor cloudproductieomgevingen
Voordat we de query voor ALTER TABLE uitvoeren op een productieomgeving van Adobe Commerce op een cloudinfrastructuur, raden we u ten zeerste aan deze stappen uit te voeren:
- Test de volledige procedure om verhogingsidentiteitskaart op uw het opvoeren milieu te veranderen
- [ creeer een steun van DB ] om uw Productie-OB in het geval van mislukking te herstellen
[ om het even welke gesteunde versie ]