我正在使用 CakePHP 1.3,如果它是新记录,我将在循环中插入新记录(几~几千条),或者如果它们已经存在,则更新现有记录。但是我保存的方式并没有检查记录是否已经存在;相反,我在每条记录中分配了一个主键值。我分配的这个 ID 保证是唯一的。如果此 ID 不存在,CakePHP 似乎知道插入,否则更新。
但是,我不确定我是否以正确的方式进行操作。如果我在循环中创建一条新记录,我会在这里阅读,我需要这样做,我确实在其他函数中实现了这一点,我知道每条记录都是唯一的。我不在这里这样做,因为它似乎可以正常工作,并且我不需要检查每个记录的存在。$this->create()
我插入或更新的每个记录数组都具有id
指示相应表中主键的键,并且每个数组都包含正确关联的两个模型的数据。
例如
$this->saveAll($myData);
Array
(
[MyModel] => Array
(
[id] => 123
[xyz] => ...
...
)
[MySecondModel] => Array
(
[id] => 789
[my_model_id] => 123
[qwe] => ...
...
)
)
我正在做的事情是好的,还是我需要检查是否存在$this->create()
,如果有必要的话?