如何更改配置单元表中列名的长度?

q0qdq0h2  于 2021-06-26  发布在  Hive
关注(0)|答案(1)|浏览(364)

我有一个配置单元表,其中的列名比通常的要长。我为表定义引用了配置单元元存储。这就是它的样子:

DESCRIBE hive.columns_v2;

输出:

Name        ||  Null      ||   Type           
-----------    -------- -------------- 
CD_ID       ||  NOT NULL  || NUMBER         
COMMENT     ||            || VARCHAR2(256)  
COLUMN_NAME || NOT NULL   || VARCHAR2(128)  
TYPE_NAME   || NOT NULL   || VARCHAR2(4000) 
INTEGER_IDX || NOT NULL   || NUMBER(10)

我可以看到列名称定义为varchar2,共128字节。是否有可以更改此值的配置单元元存储设置?
更新:请参考这张问题已经解释清楚的罚单。https://issues.apache.org/jira/browse/hive-9815
这样做的目的是将数据库本身的最大字符串大小设置为“扩展”。但这会弄乱数据库中的很多其他东西。
有什么解决办法吗?

3xiyfsfu

3xiyfsfu1#

这可能有用:
alter table table_name change[column]col|old_name col|new_name column|type[comment col|comment][first | after column|name]
例子:
创建表名称(a int,b int,c int);
//将a列的名称更改为a1 alter table\ U name更改为a1 int;

相关问题