如何在不包含新列名和类型的情况下更改现有Hive表中的列注释?

时间:2015-03-23 16:17:24

标签: hive

我想使用配置单元0.13更改现有配置单元表上的列注释。这有效:

创建表测试(mycolumn int); alter table test change mycolumn mycolumn int comment'hello';

但我无法在不重复列名和类型的情况下找到这样做的方法,两者都与更改无关。例如:

alter table test change mycolumn comment'hello';导致错误。

如果这是针对一个列,那么这不是什么大问题,但我想对未注释的表中的大量列执行此操作。我知道这可以通过一个简单地复制列名称及其类型的脚本来完成,但很高兴知道是否有更简单的东西。感谢

3 个答案:

答案 0 :(得分:1)

ALTER TABLE test_change CHANGE a1 a1 INT COMMENT'这是列a1';

答案 1 :(得分:0)

直接不支持编辑注释的列属性

更改表dev.travel更改num2 clm_num1 int注释“已添加新列”;

现在我想改变一下;

更改表dev.tkt更改clm_num1 num2 int注释“添加了新列”;  更改表dev.tkt更改num2 clm_num1 int注释'添加了新注释的新列';

答案 2 :(得分:0)

您可以使用ALTER命令执行此操作。

CREATE TABLE my_table
(id INT COMMENT 'id comment',
name STRING comment 'name comment');

-- change column comment as below.
ALTER TABLE my_table CHANGE id id INT COMMENT 'another comment';
-- see changed column
DESC EXTENDED my_table;