我已经设置了我的postgres数据库并应用了所有约束。我在所有桌子上都运行了蛋糕烘烤并开始测试。我收到了这个错误:
错误:SQLSTATE [23505]:唯一违规:7错误:重复键值违反唯一约束“fasciculos_pkey1”DETAIL:键(id)=(7)已存在。
SQL查询:
INSERT INTO“xconv2”。“fasciculos”(“created”,“user_id”,“revista_id”,“volume”,“issue”,“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创建的序列的下一个值。似乎只是重新开始...我认为这是缓存问题,但不确定。
有帮助吗?
有几件事:
created
列填充'now()'作为字符串,而不是来自NOW()函数的值。在PHP代码中填入适当的日期时间(date('Y-m-d H:i:s')
通常可以解决问题)。无论如何,如果你在一个循环中插入记录,或者只是多个具有相同模型的记录,不要忘记在模型上调用create()
,否则ID将是相同的。