[mysql]从表中删除所有行,重置自动递增

标签: sql MySQL PHP
发布时间: 2017/4/9 23:26:39
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

下面是代码。看起来像当我运行此文件,它不做任何事。

header('Content-Type: application/json');

$DB = new mysqli("localhost", "root", "root", "friendslist");
if($DB->connect_errno) {
    die("Connect failed: ". $DB->connect_error);
}

$DB->query("DELETE * FROM users");
$DB->query("ALTER TABLE users AUTO_INCREMENT = 1");

$DB->close();

    echo json_encode(Array('status' => 'ok'));

解决方法 1:

您的查询语法有错误。如果你阅读的文档,你可以看到,有效语法规则的 DELETE 都是︰

DELETE FROM users

或︰

DELETE users.* FROM users

.* 在第二个版本是可选的。但是 DELETE * 是无效的。

您也可以使用 TRUNCATE tablename 来从表中删除一切和重置在一个步骤中的自动增量 ID。

您还应该检查查询是否成功︰

$DB->query("DELETE * FROM users") or die ($DB->error);

会告诉你,没有语法错误。然后我敢肯定你会有检查文档以查看正确的语法是什么,和它马上解决掉,而不是去将问题发布到苏的缓慢路线

官方微信
官方QQ群
31647020