TDengine 新功能 通过 UID 删除不可见表

1. 背景

我们在通过程序建表时,使用反引号把表名引用起来时,可以创建出来有不可见字符的表名,此时这样的表就无法访问,也无法删除,成了系统中的僵尸表。

从 TDengine 3.3.3.0 版本开始,提供了一个新的通过表的 UID 来删除表的功能,对于原来的僵尸表,即可查询到表对应 UID 直接删除。

2. SQL语法

DROP TABLE WITH [ db_name. ]`UID` [, [ db_name. ]`UID`] ...

  • 功能说明:

根据表 UID 删除表,表可以为超级表、子表或普通表,UID 必须加且只能使用反引号,可以一次删除多个 UID, 之间使用逗号分隔。

  • 获取表 UID

表的 UID 可以查询系统表得到,如:

select db_name,table_name ,uid from information_schema.ins_tables where uid is not null;

  • 错误码说明:
Error code description note
0x2600 syntax error near Sql 语句非法
0x2603 Table does not exist drop 不存在的表
0x2644 Permission denied or target object not exist 非 root 用户执行 drop table with

3. 总结

通过表 UID 删除表是解决表名时有不可见字符导致无法使用表名删除的场景使用。

相关推荐
vvilkim20 分钟前
MySQL 用户权限管理:从入门到精通
数据库·mysql
奔驰的小野码24 分钟前
MySQL8.x新特性:与mysql5.x的版本区别
数据库·mysql
lml485627 分钟前
MySQL高可用
数据库·mysql
YUNYINGXIA29 分钟前
MySQL高可用
数据库·mysql
小芳矶1 小时前
【全网首发】解决coze工作流批量上传excel数据文档数据重复的问题
数据库·oracle·excel
IvanCodes1 小时前
MySQL 数据库备份与还原
大数据·数据库·sql·mysql
mahuifa1 小时前
ubuntu18.04编译qt5.14.2源码
开发语言·数据库·qt
Freedom℡2 小时前
Spark,连接MySQL数据库,添加数据,读取数据
数据库·hadoop·spark
小伍_Five2 小时前
spark数据处理练习题详解【下】
java·大数据·spark·scala
你的坚持终将美好,2 小时前
elasticsearch kibana ik 各版本下载
大数据·elasticsearch·搜索引擎