如果 uid 存在,则更新值

我想更新 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();

这只会添加一个新行,但我如何更新该值?


慕标5832272
浏览 131回答 1
1回答

慕的地10843

你可以尝试这样的事情:    $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();
打开App,查看更多内容
随时随地看视频慕课网APP