如何使用PHP在MySQL中验证DELETE语句是否成功?

如何使用PHP在MySQL中验证DELETE语句是否成功?,php,mysql,Php,Mysql,如何使用PHP在MySQL中验证DELETE语句是否成功?查看带有注释的区域 if ($stmt = $db->prepare($query)) { $stmt->bind_param('i', $useid); $stmt->execute(); $result = $stmt->get_result(); // did DELETE call succeed and not error out? $stmt->clo

如何使用PHP在MySQL中验证DELETE语句是否成功?查看带有注释的区域

if ($stmt = $db->prepare($query)) 
{
    $stmt->bind_param('i', $useid);
    $stmt->execute();
    $result = $stmt->get_result();

    // did DELETE call succeed and not error out?

    $stmt->close();
}

结果必须返回true,然后使用
$stmt->受影响的行

if ($stmt = $db->prepare($query)) 
    {
        $stmt->bind_param('i', $useid);
        $result_del=$stmt->execute();
        if($result_del){
           printf("rows deleted: %d\n", $stmt->affected_rows);
        }

        // did DELETE call succeed and not error out?

        $stmt->close();
    }

结果必须返回true,然后使用
$stmt->受影响的行

if ($stmt = $db->prepare($query)) 
    {
        $stmt->bind_param('i', $useid);
        $result_del=$stmt->execute();
        if($result_del){
           printf("rows deleted: %d\n", $stmt->affected_rows);
        }

        // did DELETE call succeed and not error out?

        $stmt->close();
    }

您可以检查execute()函数的返回值


您可以检查execute()函数的返回值

像这样:

if ($stmt = $db->prepare($query)) 
{
    $stmt->bind_param('i', $useid);
    $stmt->execute();
    $result = $stmt->get_result();

    $deleted = $stmt->affected_rows;
    print("Deleted $deleted rows.\n");

    $stmt->close();
}
受影响的\u行()
让您知道最近的查询影响了多少行。

如下所示:

if ($stmt = $db->prepare($query)) 
{
    $stmt->bind_param('i', $useid);
    $stmt->execute();
    $result = $stmt->get_result();

    $deleted = $stmt->affected_rows;
    print("Deleted $deleted rows.\n");

    $stmt->close();
}


受影响的_rows()
让您知道最近一次查询影响了多少行。

如果我没有记错,MySqlCommand ExecuteScalar()是一个函数,如果删除成功,您可以使用它返回1。您可以通过执行rowCount()查看受影响的行数。它返回受insert、delete和update影响的行数。您可以检查结果是否返回true,然后使用
bind_param
执行您想要执行的操作mysqli@StevenMoseleyOP使用的是mysqli而不是PDO;这里有两种不同的动物。所以请撤回你的投票。如果我没有错,请删除注释MySqlCommand ExecuteScalar()是一个函数,如果删除成功,您可以使用此函数返回1。您可以查看受rowCount()影响的行数。它返回受insert、delete和update影响的行数。您可以检查结果是否返回true,然后使用
bind_param
执行您想要执行的操作mysqli@StevenMoseleyOP使用的是mysqli而不是PDO;这里有两种不同的动物。所以请撤回你的投票。删除commentOP使用的是mysqli而不是PDO。这
rowCount()
是PDO。更新后的我的应答器使用的是mysqli而不是PDO。这
rowCount()
是PDO。更新了我的回答。你应该解释一下。即使你是对的,你也需要添加一些东西,而不仅仅是删除代码。即使你是对的,你也需要添加一些东西,而不仅仅是删除代码。
bind_param()
你称之为PDO?啊,你是对的,先生。我看得不够仔细。所以习惯于使用PDO语句,我没有注意bind_param()。在这种情况下,受影响的行是正确的。我写的对吗?你是根据那个评论写的吗?也许是别人干的。这当然是我的“蜘蛛感觉”了。
bind_param()
你把这个叫做PDO?啊,你说得对,先生。我看得不够仔细。所以习惯于使用PDO语句,我没有注意bind_param()。在这种情况下,受影响的行是正确的。我写的对吗?你是根据那个评论写的吗?也许是别人干的。当然,这是我的“蜘蛛感觉”。