所以我有一个类似下面的查询(实际上更复杂,但对问题不重要,所以我删了一些)我返回'一个值。
查询在sql中运行正常:
$sql = "UPDATE user_authentication
SET failed_login_attempts = failed_login_attempts + 1,
RETURNING failed_login_attempts";
但是在codeigniter中它返回一个布尔值而不是一个整数。这是codeigniter的result()函数应该发生的事情,所以它不是一个bug或任何东西,但我只是想知道是否有一个解决方法来从更新语句中获取返回值。我知道我可以做第二次询问......
when I user $query->result();
答案 0 :(得分:1)
你可以用CTE链接它:
WITH upd AS (UPDATE user_authentication
SET failed_login_attempts = failed_login_attempts + 1
RETURNING failed_login_attempts
)
SELECT * FROM upd;