我想更新 MySQL 数据库的值。如果uid在数据库中找不到具有 的用户,则应添加具有 和 值的新行uid,firstname但如果uid数据库中存在 ,则仅first_name应更新列的值。这是我到目前为止所拥有的:$em = $this->getDoctrine()->getManager();$personal = new Personal();$personal->setUid($uid);$personal->setFirstName($value);$em->persist($personal);$em->flush();这只会添加一个新行,但我如何更新该值?
1 回答
慕的地10843
TA贡献1785条经验 获得超8个赞
你可以尝试这样的事情:
$em = $this->getDoctrine()->getManager();
$search = $this->getDoctrine()->getRepository(Personal::class)->findBy(array("uid" => $uid));
if (count($search) == 0) {
$personal = new Personal();
$personal->setUid($uid);
} else {
$personal = $search[0];
}
$personal->setFirstName($value);
$em->persist($personal);
$em->flush();
- 1 回答
- 0 关注
- 130 浏览
添加回答
举报
0/150
提交
取消