Magento 产品保存时出现 `catalog_product_entity_tier_price` 错误中的重复条目

标签 magento exception magento-1.9

我有一个启用了 Tier Price 的产品。当我加载该产品并尝试更新时,Magento 抛出异常。

这是我的代码。

$_product = Mage::getModel('catalog/product')->load(779);
try {
    $_product->setData('backorder_limit', '10');
    $_product->save();
} catch (Exception $e) {
    echo $e->getMessage();
}

上面的代码打印出下面的异常

SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '779-1-0-5.0000-0' for key 'E8AB433B9ACB00343ABB312AD2FAB087', query was: INSERT INTO catalog_product_entity_tier_price (entity_id, all_groups, customer_group_id, qty, value, website_id) VALUES (?, ?, ?, ?, ?, ?)

当我删除等级价格时,上面的代码工作正常。我尝试重建索引并清除缓存但没有成功。

我对这个错误一无所知,所以我在这里问你们是否有人知道问题是什么以及如何解决?

非常感谢!

最佳答案

有时 $product->save() 会抛出这个错误。

为防止这种情况,请尝试使用 $product->getResource()->save($product)

我希望它对你有用。

编辑:这假设您在脚本之上设置。

Mage::app()->setCurrentStore(Mage_Core_Model_App::ADMIN_STORE_ID);

关于Magento 产品保存时出现 `catalog_product_entity_tier_price` 错误中的重复条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35083440/

相关文章:

javascript - javascript 中的简单异常导致代码无法工作

c++ - 调用错误的纯虚方法

php - Magento 从 1.9.4.5 升级到 Openmage 20.x

mysql - Magento 1.9 到 2 迁移 : General error: 1419 You do not have the SUPER privilege and binary logging is enabled

php - 如何调试 PHP Web 应用程序(特别是 Magento)的安装流程?

php - 当使用 AJAX 加载 block 时,Magento 2 中缺少追加销售产品价格

php - 无法将 Magento 1.6 商店注册页面上的自定义字段获取到 mysql 数据库中。?

java - Spring Boot 如何返回我自己的验证约束错误信息

php - 添加了更多信息Magento 在后端看不到属性

magento-1.9 - 如何清除 magento 购物车中的所有购物车项目(在来自世界各地的所有 PC 中)