magento, error when reindexing Catalog URL Rewrites

后端 未结 3 1596
执笔经年
执笔经年 2021-01-07 13:24

All this afte rupgrading from 1.4.1

I get a quite specific error message:

Next exception \'Zend_Db_Statement_Exception\' with message \'SQLSTA

相关标签:
3条回答
  • 2021-01-07 14:19

    @perler, here is a MySQL query to detect duplicate SKUs. Remember, if you prefixed your tables, change catalog_product_entity accordingly!

    SELECT
        DISTINCT(`sku`) as `sku`,
        COUNT(`sku`) as `skuCount`,
        entity_id
    FROM
        catalog_product_entity
    GROUP BY
        `sku`
    HAVING
        `skuCount` > 1;
    
    0 讨论(0)
  • 2021-01-07 14:20

    The duplicate entry is for a key made up from 3 fields, id_path, is_system and store_id, in theory you should be able to use URL Rewrite Management, search for an id_path of product/19 and this is your 'troublesome' field. Deleting that value may solve the issue (but I'd recommend making a backup first, and trying it in a dev environment first).

    If you are still in development and haven't used any custom rewrites you could just empty the core_url_rewrite table and re-index to regenerate all the fields. If it is a live site this would be a little more troublesome, it would mean losing a bit of SEO juice if you have renamed products, since you would lose the rewrite.

    0 讨论(0)
  • 2021-01-07 14:21

    Ok, the problem was a duplicate SKU. You shouldn't be able to enter one, but what happened (in magento 1.4.0.1) was, that the client entered a very long SKU which got shortened when saving the product. the shortened part was then identically to another SKU.

    so, if yourself have this problem, check you database for duplicate SKUs (can someone post an SQL Query to do this?)

    0 讨论(0)
提交回复
热议问题