更新配置单元列名称

时间:2017-09-13 14:10:19

标签: mysql hive create-table presto

我对Hive DB有一个简单的问题。

如果我有一个表,可以说我是通过" CREATE EXTERNAL TABLE TEMP",用某个位置创建的 - 我想更改列名(只有名称 - 而不是类型)。如果我将使用不同的列名运行相同的CREATE命令 - 会发生什么?表格列会自行更新吗?我得到错误"表已经存在"?

我问这个问题,因为我将列名存储在数据库中,并且我想进行自动处理 - 所以我不想写一个特定的"更新列名&# 34;命令...

谢谢!

2 个答案:

答案 0 :(得分:0)

可以使用ALTER TABLE table_name CHANGE完成,因为它需要元更改。

例如

ALTER TABLE table_name CHANGE [COLUMN] col_old_name col_new_name column_type [COMMENT col_comment] [FIRST|AFTER column_name]

https://www.cloudera.com/documentation/enterprise/5-8-x/topics/impala_alter_table.html

答案 1 :(得分:0)

不,表列不会更新。相反,当表已经存在时,您将收到错误。