截断MySQL数据库中与名称模式匹配的所有表

截断MySQL数据库中与名称模式匹配的所有表

本文介绍了截断MySQL数据库中与名称模式匹配的所有表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要清除所有库存表.

I need to clear all my inventory tables.

我已经尝试过了:

SELECT 'TRUNCATE TABLE ' + TABLE_NAME
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_NAME LIKE 'inventory%'

但是我得到这个错误:

Truncated incorrect DOUBLE value: 'TRUNCATE TABLE ' Error Code 1292

如果这是正确的方法,那我在做什么错了?

if this is the correct way, then what am I doing wrong?

推荐答案

使用concat:

SELECT concat('TRUNCATE TABLE `', TABLE_NAME, '`;')
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_NAME LIKE 'inventory%'

这当然只会生成您需要复制并自己运行的SQL.

This will of course only generate SQL which you need to copy and run yourself.

这篇关于截断MySQL数据库中与名称模式匹配的所有表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-15 00:06