如何检查使用旧API的MySQL查询是否成功?

时间:2012-08-12 00:27:47

标签: php mysql

除了使用die()

之外,如何检查MySQL查询是否成功

我正在努力实现......

mysql_query($query);

if(success){
//move file
}
else if(fail){
//display error
}

6 个答案:

答案 0 :(得分:57)

这是mysql_query手册页中的第一个示例:

$result = mysql_query('SELECT * WHERE 1=1');
if (!$result) {
    die('Invalid query: ' . mysql_error());
}

如果您希望使用die以外的其他内容,那么我建议trigger_error

答案 1 :(得分:12)

您也可以使用mysql_errno()

$result = mysql_query($query);

if(mysql_errno()){
    echo "MySQL error ".mysql_errno().": "
         .mysql_error()."\n<br>When executing <br>\n$query\n<br>";
}

答案 2 :(得分:4)

如果查询失败,您将收到FALSE返回值。否则,您将收到资源/ TRUE。

$result = mysql_query($query);

if(!$result){
    /* check for error, die, etc */
}

基本上只要它不是假的,你就没事。之后,您可以继续使用代码。

if(!$result)

这段代码实际上运行了你的查询。

答案 3 :(得分:2)

mysql_query函数用于在php中执行mysql查询。如果查询执行失败,mysql_query将返回false。您可以尝试使用mysql_error()函数 例如

$result=mysql_query($sql)

die(mysql_error());

在上面的代码片段中,如果查询执行失败,那么它将终止执行并在执行sql查询时显示mysql错误。

答案 4 :(得分:1)

只放:

or die(mysqli_error());

查询后

并将错误重新设置为echo

例如

// "Your Query" means you can put "Select/Update/Delete/Set" queries here
$qfetch = mysqli_fetch_assoc(mysqli_query("your query")) or die(mysqli_error()); 



    if (mysqli_errno()) {
        echo 'error' . mysqli_error();
        die();
    }

答案 5 :(得分:0)

如果使用MySQLi bind_param尝试将此行放在查询上方

mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);