cakephp 2.x saveAll with 2 primaryKey

时间:2014-03-27 06:52:30

标签: cakephp-2.0

我的表格有两栏:cidcode

它们都是主键,cid是主键1,code是主键2

我正在使用cakephp,我试图用以下方法保存数据:

cid [1, 2, 1, 2]

code [11, 11, 12, 12]

但我收到错误消息:

Integrity constraint violation: 1062 Duplicate entry '1' for key 'PRIMARY'

请帮助我,非常感谢。

1 个答案:

答案 0 :(得分:0)

这不是一个php错误,这里发生的是你导致了一个mysql数据库错误,而蛋糕错误类正在返回给你。在saveAll上,您正在尝试插入其中一个已经包含特定主键的表。运行这些查询以检查:

SELECT * FROM your_table WHERE cid = 1;
SELECT * FROM your_table WHERE code = 1;

如果出现任何违规记录。删除它,然后重试。此外,您不应该强制设置表格的主键,而应使用autoincrement。而且我从经验中知道,蛋糕会给你带来多个主键的表很难。我希望有所帮助。