Phalcon PHP:更新主要自然键

时间:2014-12-08 18:28:49

标签: php mysql sql-update phalcon natural-key

有没有一种方法可以更新Phalcon中具有自然键的表?

考虑下表:

people
------
person
created_at
updated_at

我们假设person字段是唯一的并且是主键。我尝试执行以下操作:

$person = new People();
$person->person = 'Ed';
$person->save();

$personUpdate = People::findFirst('person = "Ed"');
$personUpdate->person = 'Bob';
$person->save();

Phalcon最终尝试做的是插入新记录,而不是更新现有记录。我需要它要做的是更新...人员=' Ed';

思想?

谢谢!

3 个答案:

答案 0 :(得分:2)

尝试以下方法......

<?php 
$personUpdate = People::findFirst('person = "Ed"');
$personUpdate->person = 'Bob';
$person->update();

答案 1 :(得分:1)

除了...... People::find

之外,你做得正确

find将准备获取所有数据..这意味着它在数组中Documentation

您需要使用findFirst代替find

$personUpdate = People::findFirst('person = "Ed"');
$personUpdate->person = 'Bob';
$person->save();

答案 2 :(得分:0)

请注意,您使用的是$ person-&gt; update()而不是$ person Update-&gt; update();

    <?php 
$personUpdate = People::findFirst('person = "Ed"');
$personUpdate->person = 'Bob';
$person->update();