2

SQLSTATE [23000]:完整性约束违规:1062 键 'UNQ_CATALOGINVENTORY_STOCK_ITEM_PRODUCT_ID_STOCK_ID' 的重复条目 '3262-1'#

当我尝试将库存添加到我的商店时出现,并且显然删除了我输入的内容并且不允许我添加任何内容,请帮我解决这个问题,我不是计算机上最神奇的,所以请裸露这个心里。

谢谢

4

7 回答 7

10

改变

$product->save();

$product->getResource()->save($product);

为我解决了这个问题

于 2015-08-12T23:59:40.657 回答
5

两天以来,我遇到了同样的问题并对其进行了调试。最后我得到了解决方案并解决了这个问题。这是由于数据库表的不一致而发生的。

cataloginventory_stock_item
catalog_product_entity

我使用以下查询删除了所有不一致的数据:

DELETE FROM cataloginventory_stock_item where product_id NOT IN (select entity_id from catalog_product_entity)

您可以在执行删除之前检查有多少记录。

select count(*) from cataloginventory_stock_item where product_id NOT IN (select entity_id from catalog_product_entity)

可能这可以帮助某人!

于 2016-11-08T07:30:14.490 回答
4

您可以在 magento 论坛中查看此错误。 http://www.magentocommerce.com/boards/viewthread/300959/ 这是 sql 索引链接错误。Yuo 可以$product->getResource()->save($product);用来解决这个问题。

https://stackoverflow.com/a/14152754/1844561

于 2014-02-27T22:23:05.707 回答
3

我在谷歌上花了几个小时试图找到像我这样的业余爱好者很容易理解的正确信息。最终使用不同的来源,我弄清楚了我需要删除的内容以及需要删除的位置。以下对我有用,希望对你有用。

  1. 转到您的数据库
  2. 找到名为“cateloginventory_stock_item”的表
  3. 删除列表中的最后几条记录(在表格底部)

瞧!您现在应该可以输入新产品了。

于 2015-01-28T22:52:12.077 回答
1

1062 键 'UNQ_CATALOGINVENTORY_STOCK_ITEM_PRODUCT_ID_STOCK_ID' 的重复条目 '3262-1'#

从这里可以清楚地看出,数据库中已经存在一些独特的约束和 3262 值。

我建议您运行重新索引然后检查。

基本上,某些条目 3262 没有从您的股票表中删除,因此新条目会引发错误。

于 2013-05-15T16:31:58.730 回答
1

我遇到了类似的问题,我应用的修复如下:

错误:SQLSTATE [23000]:违反完整性约束:1062 键 'UNQ_CATALOGINVENTORY_STOCK_ITEM_PRODUCT_ID_STOCK_ID' 的重复条目 '59457-1'

解决方案:有一个名为 eav_entity_store 的表,您必须修改提及 sku / 产品 ID 的记录,将增量 ID 增加到 + 1 并更新数据库中的该记录。更新增量 ID 后,您将能够添加库存。

例如:如果“eav_entity_store”表的最后一个 increment_last_id = 730354,那么我将不得不将该记录更新为 730355,我的问题将得到解决:)

SQL 查询:更新eav_entity_storeincrement_last_id= '730355' 其中eav_entity_store. entity_store_id=$YourStoreID;

于 2015-07-22T12:23:14.483 回答
1

如果显示具有“UNQ_CATALOGINVENTORY_STOCK_ITEM_PRODUCT_ID_STOCK_ID”索引的表“cataloginventory_stock_item”的错误,

那么请确保您每次都从脚本中传递不同的产品 SKU。因为如果您传递相同的 SKU,那么它将根据该 SKU 获取产品的 id 并获取该特定产品 id 的重复条目。也永远不要使用 $product->save(); 至

$product->getResource()->save($product); 因为它不会完全更新您的产品详细信息。

于 2016-11-10T13:22:55.037 回答