Hive 如何在配置单元中以驼峰大小写保留列名

Hive 如何在配置单元中以驼峰大小写保留列名,hive,hiveql,hive-metastore,Hive,Hiveql,Hive Metastore,选择“12345”作为“EmpId” --输出为empid,值为12345 任何与EmpId保持相同列名的线索都是不可能的。这是HIVE元存储的一个限制。它以所有小写字母存储表的模式 配置单元使用此方法规范化列名,请参见 所有代码中都有许多相同的toLowerCase。例如,等等,由于需要对代码进行大量更改,因此要更改此行为似乎并不容易。谢谢。。我现在明白了 private static String normalize(String colName) throws HiveException

选择“12345”作为“EmpId”

--输出为empid,值为12345


任何与EmpId保持相同列名的线索都是不可能的。这是HIVE元存储的一个限制。它以所有小写字母存储表的模式

配置单元使用此方法规范化列名,请参见


所有代码中都有许多相同的
toLowerCase
。例如,等等,由于需要对代码进行大量更改,因此要更改此行为似乎并不容易。

谢谢。。我现在明白了
private static String normalize(String colName) throws HiveException {
    if (!MetaStoreServerUtils.validateColumnName(colName)) {
      throw new HiveException("Invalid column name '" + colName
          + "' in the table definition");
    }
    return colName.toLowerCase();
  }