Mysql
 sql >> Base de données >  >> RDS >> Mysql

Magento :SQLSTATE[23000] :Violation de la contrainte d'intégrité :1062 Entrée en double '100000001' pour la clé 'UNQ_SALES_FLAT_ORDER_IN

Vous pouvez essayer de suivre.

Dans app/code/core/Mage/Sales/Model/Resource/Quote.php

Rechercher la méthode isOrderIncrementIdUsed

Dans cette méthode,

remplacer

$bind = array(':increment_id' => (int)$orderIncrementId);

avec

$bind = array(':increment_id' => $orderIncrementId);

-------------------------------------------------- ---------- OU--------------------------------------- ----------------------------------------

Allez dans admin->ventes->commandes et recherchez le numéro de commande le plus élevé (pour chaque vue de magasin !)

Ensuite, regardez votre base de données. Dans le tableau eav_entity_type, vous trouverez tous les types d'entités répertoriés. Celui d'intérêt à changer est l'endroit où commence le numéro de commande, c'est-à-dire. commande vente/commande. N'oubliez pas l'entity_type_id.

Allez ensuite dans la table eav_entity_store. Recherchez l'entity_type_id. Vous pouvez maintenant remplacer la valeur de increment_last_id par votre dernier numéro de commande réel. (Autrement dit, si vous vouliez que votre prochain ID de commande soit 15000, définissez increment_last_id sur 14999.)