美文网首页
【Hive问题 2】Hive修改字段类型异常

【Hive问题 2】Hive修改字段类型异常

作者: liuhensiyuhua | 来源:发表于2022-08-23 18:10 被阅读0次

    背景

    常见hive修改字段类型操作

    alter table 
          [数据库].[数据表] 
    change column [原字段] [新字段] [字段类型]
    

    但是有时候修改字段类型会出现以下异常:

    FAILED: Execution Error, return code 1 from 
    org.apache.hadoop.hive.ql.exec.DDLTask. Unable to alter table. 
    The following columns have types incompatible with the existing columns in their respective positions :
    

    其中可能是string类型无法转换为int等强转类型的限制

    可以进行以下步骤的尝试解决上面遇到的问题:
    1.打开hive的强转设置

       set hive.metastore.disallow.incompatible.col.type.changes=false;
    

    2.如果需要修改的字段在末尾的话,可以考虑使用replace语句去掉该字段后,然后再重新添加该字段
    例如:
    table原有c1和c2两个字段,由于c2字段类型(原来为string,需要调整为int)不对,需要先删除c2,再增加正确的c2

    alter table [数据库].[数据表] replace columns(c1 string);  
    

    相关文章

      网友评论

          本文标题:【Hive问题 2】Hive修改字段类型异常

          本文链接:https://www.haomeiwen.com/subject/nzsogrtx.html