Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

mysql清空数据库

作者:断念已残   发布日期:2026-02-09   浏览:93

-- 清空数据库中的所有表数据,但保留表结构

-- 使用以下命令可以清空指定数据库中的所有表的数据,但不会删除表结构。
-- 请注意,这将删除所有表中的数据,无法恢复,请谨慎操作。

USE your_database_name;  -- 替换为你的数据库名称

-- 获取所有表名并生成TRUNCATE TABLE语句
SET @sql = NULL;
SELECT
  GROUP_CONCAT('TRUNCATE TABLE ', table_name, '; ')
INTO @sql
FROM information_schema.tables
WHERE table_schema = 'your_database_name';  -- 替换为你的数据库名称

PREPARE stmt FROM @sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;

-- 如果你想要彻底删除数据库(包括表结构),可以使用以下命令:
-- DROP DATABASE your_database_name;  -- 替换为你的数据库名称
-- 但这会完全删除数据库,包括所有的表和数据,请谨慎使用。

解释说明:

  1. USE your_database_name;:选择要操作的数据库。请将 your_database_name 替换为你要清空的数据库名称。
  2. TRUNCATE TABLE:用于快速清空表中的所有数据,但保留表结构。相比 DELETETRUNCATE 更快且不会触发触发器。
  3. 信息模式查询:通过查询 information_schema.tables 获取数据库中所有表的名称,并生成对应的 TRUNCATE TABLE 语句。
  4. 动态SQL执行:使用 PREPAREEXECUTE 动态执行生成的 SQL 语句,以清空所有表的数据。
  5. DROP DATABASE:如果你需要彻底删除数据库(包括表结构),可以使用 DROP DATABASE,但这会完全删除数据库,请谨慎使用。

希望这段代码和解释对你有帮助!

上一篇:mysql proxy

下一篇:mysql 自动备份

大家都在看

mysqlavg函数保留小数

mysql显示表内容

mysql经纬度距离计算

mysql 加密

存储过程mysql

mysql 1265

mysql with语句

mysql时间加减

mysql查询表名,模糊匹配

brew 启动mysql

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站