Cambiar ID de incremento
Este artículo explica cómo cambiar el id. de incremento de una entidad de la base de datos de Commerce (BD) (pedido, factura, nota de abono, etc.) en un almacén de Commerce concreto mediante la instrucción SQL ALTER TABLE.
Versiones afectadas
- Adobe Commerce (local): 2.x.x
- Adobe Commerce en infraestructura en la nube: 2.x.x
- MySQL: cualquier versión compatible
¿Cuándo necesita cambiar el ID de incremento?
Es posible que tenga que cambiar el ID de incremento de las nuevas entidades de base de datos en estos casos:
- Después de una restauración de copia de seguridad en disco duro en un sitio activo
- Se han perdido algunos registros de pedidos, pero sus ID ya están siendo utilizados por las puertas de enlace de pago (como PayPal) para su cuenta de comerciante actual. Siendo así, las puertas de enlace de pago dejan de procesar nuevos pedidos que tienen los mismos ID, devolviendo el error "ID de factura duplicado"
Pasos previos necesarios
-
Busque tiendas y entidades para las que se debe cambiar el nuevo ID de incremento.
-
Conéctese a su base de datos MySQL.
Para Adobe Commerce en la infraestructura en la nube, al principio, debe conectarse usando SSH a su entorno. -
Compruebe el valor actual
auto_incrementpara la tabla de secuencia de entidades mediante la siguiente consulta:code language-sql SHOW TABLE STATUS FROM `{database_name}` WHERE `name` LIKE 'sequence_{entity_type}_{store_id}';
Si está comprobando un incremento automático para un pedido en el almacén con ID=1, el nombre de la tabla sería "sequence_order_1".
Si el valor de la columna auto_increment es '1234', el siguiente pedido realizado en el almacén con ID=1 tendrá el identificador '#100001234'.
Actualizar entidad para cambiar el ID de incremento
Actualice la entidad con la siguiente consulta:
ALTER TABLE sequence_{entity_type}_{store_id} AUTO_INCREMENT = {new_increment_value};
Después de ejecutar la siguiente consulta:
ALTER TABLE sequence_order_1 AUTO_INCREMENT = 2000;
El siguiente pedido realizado en la tienda con ID=1 tendrá el identificador "#100002000".
Pasos adicionales recomendados en entornos de producción en la nube
Antes de ejecutar la consulta ALTER TABLE en un entorno de producción de Adobe Commerce en una infraestructura en la nube, se recomienda encarecidamente realizar estos pasos:
- Pruebe todo el procedimiento para cambiar el ID de incremento en el entorno de ensayo
- [Cree una copia de seguridad de la base de datos] para restaurar la base de datos de producción en caso de error
[cualquier versión compatible]