我已设置我的postgres数据库,并应用了所有约束。我在所有桌子上都运行了蛋糕烘烤并开始测试。我收到了这个错误:
错误:SQLSTATE [23505]:唯一违规:7错误:重复键值 违反唯一约束“fasciculos_pkey1”DETAIL:Key(id)=(7) 已经存在。
SQL查询:
INSERT INTO“xconv2”。“fasciculos”(“created”,“user_id”,“revista_id”, “卷”,“问题”,“svol”,“snum”,“issate”,“scheme”,“reftype”, “cliente_id”,“output_packtype”,“modified”)VALUES('now()',4,144, '4','4','4','4','4','4','4',1,'/ var / www','2013-03-25')
pk(curr_val = 545)确实默认不是null和唯一约束但是当我尝试使用add.ctp添加新记录时,cake不会考虑为PK创建的序列的下一个值。似乎只是重新开始...我认为这是缓存问题,但不确定。
有任何帮助吗?
答案 0 :(得分:0)
有几件事:
created
列将'now()'填充为字符串,而不是来自NOW()函数的值。在PHP代码中填入正确的日期时间(date('Y-m-d H:i:s')
通常可以解决问题)。无论如何,如果您在循环中插入记录,或者只是使用相同型号的多个记录,请不要忘记在模型上调用create()
,否则ID将是相同的。