UNDROP表

适用于:检查标记是的砖的SQL检查标记是的砖运行时12.1及以后

预览

这个特性是在公共预览

UNDROP命令地址管理的关注或外部表位于统一目录被意外删除或删除。默认情况下,该命令undrops(复苏)最近被删除表由用户给定的表名。父模式和目录必须存在。该特性支持恢复了表内的停留时间7天。

如果有多个同名的表,您可以使用显示表了表ID来识别和使用UNDROPID恢复特定的表。

如果有一个具有相同名称的表的表你想恢复,使用改变表重命名命令来改变现有表的名称。

表的元数据,如表特权,列规范,和属性——将恢复。主键和外键约束不是恢复的UNDROP命令。重新创建它们手动使用ALTER TABLE添加约束表后恢复。

语法

UNDROP{table_name|IDtable_id}

参数

  • table_name

    恢复的表的名称。必须不包含一个名称时间规范。如果表无法找到砖提出了一个错误。

  • table_id

    一个字符串文字的形式表所显示的UUID显示表了

权限

UNDROP需要下列基本权限之一:

  • 用户表的所有者,创建使用模式模式,使用目录在目录上。

  • 用户模式和的所有者使用目录在目录上。

  • 用户目录的所有者。

  • 用户是metastore的所有者。

如果一个用户正在复苏一个不同类型的表,额外的权限申请。例如,将一个外部表,你也必须有创建外部在外部位置或存储凭证,必须存在。

运行此命令后,默认为前面的表所有者所有权。如果需要,可以改变使用所有权改变命令。

例子

——使用表名称>创建表my_catalog.my_schema UNDROP。my_table (INT id、名称字符串);>删除表my_catalog.my_schema.my_table;> UNDROP表my_catalog.my_schema.my_table;好的——UNDROP ID -使用显示表下降到找到了表>显示表模式my_schema下降;catalogname schemaname表名tableid tabletype deletedat createdat updatedat createdby主人评论- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - my_catalog my_schema my_table ca7be55 6 - 8 f58 - 47 - a7 - 85 - ee - 7 - a59082fd17a管理2023-05-03广告于18:17:56 UTC 2023-05-03广告18:17:00 UTC 2023-05-03广告18:17:00 UTC alf@melmak。et alf@melmak。et my_catalog my_schema my_table b819f397-c51f-4e60-8acc-05d4d4a7e084管理2023-05-04广告于10:20:00 UTC 2023-05-04广告08:20:00 UTC 2023-05-04广告08:20:00 UTC alf@melmak。et alf@melmak。等——Undrop特定表下降。——在这里,我们undrop my_table表id的6 ca7be55 - 8 f58 - 47 - a7 - 85 - ee - 7 - a59082fd17a”。——注意,表id将一个字符串单引号包围。与ID > UNDROP表6 ca7be55 - 8 f58 - 47 - a7 - 85 - ee - 7 - a59082fd17a”; OK – Continuing from the example above, Now we want to undrop table with ID 'b819f397-c51f-4e60-8acc-05d4d4a7e084'. - First, we rename the existing table > ALTER TABLE my_table RENAME TO my_other_table OK - Then we can undrop table with the name my_table > UNDROP TABLE WITH ID 'b819f397-c51f-4e60-8acc-05d4d4a7e084' OK