我在更新产品数据方面遇到了问题。
奇怪的是,这个问题显然与该产品所分配到的网站有关。出于某种原因,如果产品被分配到网站A,我无法更新产品的数据 - 未执行“保存”操作。
但对于网站B,我可以修改所有产品的数据。但是,如果我尝试将产品分配给网站A,我会遇到同样的问题并且没有保存。我对许多网站的数据进行了比较,但我无法发现任何可能导致此问题的原因。
我正在使用Magento CE 1.4.2.0。升级到最新版本正在进行中,但我仍然想知道是什么导致了这一点。
答案 0 :(得分:1)
catalogrule_product_price
主键的类型为int(10)
。因此,当所有密钥都用完后,最后一个有效密钥为4294967295,请参阅Numeric Datatypes。尝试将其更改为BIGINT
,一切都应该再次有效。
答案 1 :(得分:0)
我还注意到我不能再应用目录规则 - 我收到了错误
SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '4294967295' for key 'PRIMARY'
幸运的是,我们有一个系统的备份副本,一切正常。当我比较代码时,我无法发现可能导致此问题的任何差异,所以我查看了数据库。我一旦从工作备份副本中复制了用于目录规则的数据表(catalogrule
,catalogrule_product
,catalogrule_group_website
,catalogrule_product_price
)并将其放入损坏的数据表中,一切都开始正常 - 产品保存和应用目录规则。我仍然不知道这是怎么发生的,并且必须做一个数据表比较,并且可能在那里得到答案。