繁体   English   中英

MySQLi PHP:使用MySQLi检查SQL INSERT查询是否完全成功

[英]MySQLi PHP: Check if SQL INSERT query was fully successful using MySQLi

我有这个大功能,可以获取大量不同的数据并将其插入到多个表中。并非所有数据始终可用,因此并非所有SQL INSERT查询都成功。 我需要检查哪个SQL INSERT查询是完全成功的,哪个不是对这些数据执行某些操作(比如插入日志表或类似内容)。

只是为了举例说明我认为可以做到的事情:

$sql = 'INSERT INTO data_table (ID, column1, column2) VALUES(?, ?, ?)';

if ($stmt->prepare($sql)) {
    $stmt->bind_param('iss', $varID, $var1, $var2);

    if ($stmt->execute()) {
        $success == TRUE;   //or something like that
    }
}

我不完全确定这是最好的方法,如果它总是真的显示数据是否插入表中......任何建议?

mysqli_stmt::execute上的PHP手册

mysqli_stmt::execute - mysqli_stmt_execute - 执行准备好的查询

成功时返回TRUE,失败时返回FALSE。


if ($stmt->execute()) { // exactly like this!
    $success = true;
}

你做对了......你的困境是什么?

我相信你可以使用mysqli_stmt->affected_rows来返回插入(或更改或删除)的行数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM