6

我想用php清除MySQL中一张表中的所有条目我试过这个:

<?php
// Create connection
        $con=mysqli_connect("localhost","username","password","dbName");

// Check connection
        if (mysqli_connect_errno($con))
        {
            echo "Failed to connect to MySQL: " . mysqli_connect_error();
        }    

    $sql = "TRUNCATE TABLE tableName";
    mysqli_query($sql);
?>

但它没有用。为什么?

4

3 回答 3

7

这是一个错字。您使用mysql_query()而不是mysqli_query(). 改变

mysql_query($sql);

到:

mysqli_query($con, $sql);

另请注意,两个函数的参数列表不同。mysqli_expects()连接句柄,因为它是第一个参数。

于 2013-04-11T11:28:28.963 回答
2

使用“mysqli”创建连接后,您尝试使用 mysql_query 删除“dbName”中的所有记录。

将代码更改为类似,

<?php
    // Create connection
    $con=mysqli_connect("localhost","username","password","dbName");
    // Check connection
    if (mysqli_connect_errno($con))
    {
        echo "Failed to connect to MySQL: " . mysqli_connect_error();
    }    
    $sql = "TRUNCATE TABLE tableName";
    mysqli_query($con, $sql) or die(mysqli_error());
?>

看看这是否有效并告诉我。

于 2013-04-11T11:38:48.837 回答
-1

首先检查任何可能提供线索的错误消息,有一些限制可以阻止 TRUNCATE 工作。还要确保它不是您问题中的 mysql/mysqli 函数的错字。

如果表不是很大,或者性能不重要,那么只需尝试:

$sql = "DELETE * FROM tableName";
于 2013-04-11T11:31:14.617 回答