选择“12345”作为“EmpId”;
-- 输出是 empid,值为 12345
有任何线索可以保持与 EmpId 相同的列名吗?
不可能。这是 HIVE 元存储的限制。它以全小写形式存储表的模式。
Hive 使用此方法来标准化列名称,请参阅表.java
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();
}
有很多相同的toLowerCase
跨越所有代码。例如SessionHiveMetaStoreClient.java等等,似乎要改变这种行为并不容易,因为需要对代码进行很多更改。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)