You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

TiDB中如何删除名称包含制表符( )的表?

TiDB删除含制表符的表的解决方案

步骤1:精确获取带制表符的表名

直接通过系统表INFORMATION_SCHEMA.TABLES查询,能精准返回表名的原始字符(包括制表符):

SELECT table_name FROM INFORMATION_SCHEMA.TABLES WHERE table_name LIKE '%ex_secure_TM_ROLE_UPLOAD%';

执行后复制结果里的完整表名,确保包含那个制表符,不要手动输入(手动输入的制表符可能因客户端/终端解析问题和实际表名不匹配)。

步骤2:用反引号包裹表名执行删除

把复制到的完整表名用反引号括起来,执行删除命令:

DROP TABLE `ex_secure_TM_ROLE_UPLOAD	`; -- 此处的制表符为查询结果复制所得,勿手动输入

反引号的作用是告诉TiDB这是完整的标识符,避免把制表符解析成其他字符。

步骤3:验证删除结果

再次查询系统表确认表已移除:

SELECT table_name FROM INFORMATION_SCHEMA.TABLES WHERE table_name LIKE '%ex_secure_TM_ROLE_UPLOAD%';

为什么之前的操作无效?

  • 手动输入制表符时,不同终端或客户端可能会对其进行转义(比如变成空格),导致传入TiDB的字符和实际表名不匹配;
  • SHOW CREATE TABLE手动输入带制表符的表名时,同样会因为输入的制表符和表名原始字符不一致,导致无法找到目标表,而INFORMATION_SCHEMA的查询是基于数据库存储的原始字符匹配,可靠性更高。

内容的提问来源于stack exchange,提问作者Wink Yao

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 16:52:07