php - PHP MySQL:我可以在PHP代码中放置“ALTER TABLE表名AUTO_INCREMENT = 1”吗?

标签 php mysql sql auto-increment

我想重置我的ID的自动增量,并且想知道是否有某种方法可以将其放入php mysql代码中,以便如果用户删除条目,数据库将自动重置自动增量。

通过这篇文章-> How to reset AUTO_INCREMENT in MySQL?,我发现“ ALTER TABLE表名AUTO_INCREMENT = 1”可以用来做这样的事情。我可以将其放置在我的php代码中吗?

<?php

$hostname = "";
$username = "";
$password = "";
$databaseName = "";

$con = mysqli_connect($hostname, $username, $password);

if(!$con){
    echo 'Not Connected to Server.<br>';
}
else{
    echo 'Connected to Server.<br>';
}

if(!mysqli_select_db($con, $databaseName)){
    echo 'Database Not Connected.<br>';
}
else{
    echo 'Connected to Database.<br>';
}

if($_SERVER['REQUEST_METHOD'] == 'POST') {

    $content = $_POST['content'];

    $sql = "INSERT INTO blog (content) VALUES ('$content')";

    if(!mysqli_query($con, $sql)){
        echo 'Content Not Inserted';
    }
    else{
        echo 'Content Inserted';
    }

}


?>

最佳答案

要重置自动增量列,您应该使用截断表

您应该使用以下查询:

TRUNCATE TABLE your_table


我不是PHP专家,因此以上截断表查询可能在PHP中是这样的:

$sql = "TRUNCATE TABLE your_table";
mysqli_query($con, $sql);


从注释开始,您只想重置自动增量列,然后可以通过以下方式进行查询:

$reset_increment_column = "ALTER TABLE yout_table AUTO_INCREMENT = 1";
mysqli_query($con, $reset_increment_column);

关于php - PHP MySQL:我可以在PHP代码中放置“ALTER TABLE表名AUTO_INCREMENT = 1”吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42462458/

相关文章:

php - 在 MacOs Mojave 上找不到 XAMPP 的 httpd-xampp.conf 文件

javascript - jQuery 表单验证和提交问题

Mysql - 为什么 FileSort 花费的时间比实际获取的时间长?

mysql - 生成月份行并与数据左连接

php - __toString() 必须返回一个字符串值

php - MySQL结合了几个select语句

java - 具有共享数据的两个 Web 应用程序

mysql - 如何在不使用 mysqldump 的情况下转储 mysql 表?

php - 使用 PDO 在 MySql 查询中增加值

sql - 作业队列作为具有多个消费者的 SQL 表 (PostgreSQL)