如何在 yii 中更新表中的行?我正在使用以下代码,但它不起作用
$sql = "UPDATE auth_assignment SET itemname = 'Authenticated' WHERE userid = $user->accountID";
$command = $connection->createCommand($sql);
$command->execute();
我的猜测是$user
正在转换为字符串,因此->accountID
无法正常工作。您有两种方法,一种是不安全的,一种是安全的。
不安全 - 在 $user->accountID 周围添加 {}。
$sql = "UPDATE auth_assignment SET itemname = 'Authenticated' WHERE userid = {$user->accountID}";
更安全 - 使用参数化查询:
$sql = "UPDATE auth_assignment SET itemname = 'Authenticated' WHERE userid = :userid";
$command = $connection->createCommand($sql);
$command->execute(array(':userid' => $user->accountID))
好的,我忘了在 'user->accountID' 周围加上逗号