DocumentationCommerceCommerce KB

PaaS uniquement

La mise à niveau vers B2B 1.5.2 échoue avec une erreur de syntaxe SQL en raison de l’absence de la fonction REGEXP_LIKE

Dernière mise à jour : 5 mai 2025
  • Rubriques :
  • B2B

Créé pour :

  • Administration
  • Développeur
INFO
Si vous rencontrez un problème de performances lors de la mise à niveau du module Magento_Company après la mise à jour vers B2B 1.5.2, appliquez le ACSD-65540_B2B_1.5.2_DEPENDENT_ACSD-65684_B2B_1.5.2.patch joint.
Pour plus d’informations, consultez la section Problème de performance dans la mise à niveau du module Magento_Company après la mise à jour de la version B2B 1.5.2 dans la base de connaissances Adobe Commerce.

Cet article fournit un correctif pour l’erreur de syntaxe SQL qui se produit en raison de la fonction REGEXP_LIKE manquante lors de la tentative de mise à jour de la table company_structure.

Produits et versions concernés

  • Adobe Commerce (toutes les méthodes de déploiement) 2.4.6-px + B2B 1.5.2 à l’aide de MariaDB 10.6
  • Adobe Commerce (toutes les méthodes de déploiement) 2.4.7-px + B2B 1.5.2 à l’aide de MariaDB 10.6

Problème

La mise à niveau vers la version 1.5.2 de B2B échoue avec une erreur de syntaxe SQL en raison de la fonction REGEXP_LIKE manquante lors de la tentative de mise à jour de la table company_structure.

Conditions préalables :

  • MariaDB 10.6
  • Adobe Commerce 2.4.6x ou 2.4.7x
  • Version 1.5.0 ou 1.5.1 de B2B

Procédure à suivre :

  1. Affectez une société à une société parent pour établir une hiérarchie de société. Pour plus d’informations, voir Gérer la hiérarchie de l’entreprise dans le guide B2B d’Adobe Commerce.
  2. Mettez à niveau B2B vers la version 1.5.2.

Résultats attendus :

La mise à niveau est terminée.

Résultats réels :

bin/magento setup:upgrade échoue avec l’erreur suivante :

Unable to apply data patch Magento\Company\Setup\Patch\Data\SetCompanyForStructure for module Magento_Company. Original exception message: SQLSTATE[42000]: Syntax error or access violation: 1305 FUNCTION REGEXP_LIKE does not exist, query was: UPDATE `company_structure` SET `company_id` = ? WHERE (REGEXP_LIKE(path, '^123(/.+)?$'))

Solution

Pour résoudre ce problème, procédez comme suit :

  1. Mettez à jour le module B2B vers la version 1.5.2 :

    composer require magento/module-b2b:1.5.2 --no-update
    composer update magento/module-b2b
    
  2. Appliquez le correctif ACSD-65540_B2B_1.5.2.zip joint. Pour obtenir des instructions, voir Comment appliquer un correctif de compositeur fourni par Adobe dans notre base de connaissances d’assistance.

  3. Exécutez bin/magento setup:upgrade.

Application d’un correctif à l’aide de correctifs cloud

Pour Adobe Commerce sur les infrastructures cloud, procédez comme suit :

  1. Mettez à jour la version du module cloud-patches vers la version 1.1.5 :

    composer require magento/magento-cloud-patches:1.1.5 --no-update
    composer update magento/magento-cloud-patches
    
  2. Validez et envoyez les modifications pour lancer le redéploiement. Pour obtenir des instructions, reportez-vous à la section Application de correctifs de notre guide Adobe Commerce sur Cloud .

recommendation-more-help
8bd06ef0-b3d5-4137-b74e-d7b00485808a