34

除了使用之外,如何检查 MySQL 查询是否成功die()

我正在努力实现...

mysql_query($query);

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

6 回答 6

58

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

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

如果您想使用 以外的东西die,那么我建议trigger_error

于 2012-08-12T00:29:43.093 回答
11

你也可以用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>";
}
于 2012-08-12T00:52:22.983 回答
4

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

$result = mysql_query($query);

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

基本上只要不是假的就可以了。之后,您可以继续您的代码。

if(!$result)

这部分代码实际上运行您的查询。

于 2012-08-12T00:31:29.047 回答
2

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

$result=mysql_query($sql)

或者

die(mysql_error());

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

于 2012-08-12T11:40:56.030 回答
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();
    }
于 2016-06-13T08:40:23.607 回答
0

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

mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
于 2016-03-23T00:01:21.780 回答