示例:
创建 text 格式的表
create table t1(c1 int, c2 int) stored as textfile;
增加一个字段
alter table t1 add columns (c3 int);
使用 replace columns 删除新加的字段
alter table t1 replace columns (c1 int, c2 int);
对于 ORC 类型的表,使用 replace columns 可能抛出以下异常“
org.apache.hadoop.hive.ql.metadata.HiveException: Replacing columns cannot drop columns for table xxx. SerDe may be incompatible
解决方法:
set hive.exec.schema.evolution=false;
然后再执行 replace columns 就可以了。