sql >> Base de Datos >  >> RDS >> Mysql

actualizar registros con declaraciones preparadas, verificar si la actualización funcionó

Execute El método devuelve True cuando finaliza con éxito, pero, si este comportamiento no es suficiente para usted, también puede verificar filas afectadas :

$query = "UPDATE user
            SET password = ?
            WHERE email = ?";

if($stmt = $conn->prepare($query)) 
{
    $stmt->bind_param('ss', $pwd, $userEmail);
    if ($stmt->execute()) {
        //query with out errors:
        printf("rows updateds: %d\n", $stmt->affected_rows);
    } else {
        //some error:
        printf("Error: %s.\n", $stmt->error);
    }
}

La segunda verificación que puede hacer es verificar que se actualizó exactamente 1 fila:

if($stmt = $conn->prepare($query)) 
{
    $stmt->bind_param('ss', $pwd, $userEmail);
    if ($stmt->execute() and $stmt->affected_rows == 1) {
        //your update is succesfully.
    }
}