我正在将数据迁移到Hive 1.2,我意识到默认情况下,我不再被允许使用保留字作为列名。如果要使用保留字,则需要显式设置以下设置:
hive.support.sql11.reserved.keywords=false
我的问题是,更改此默认值是否会导致任何意外的问题?更改之前我应该注意什么问题?
顺便说一下,此更改记录在此票证中:https : //issues.apache.org/jira/browse/HIVE-6617
此配置属性hive.support.sql11.reserved.keywords
是在带有HIVE-6617的 Hive 1.2.0中添加的,而在带有HIVE-14872的 Hive 2.3.0中已删除的
删除它是为了简化解析器逻辑并减小生成的解析器代码的大小。请阅读HIVE-14872中的说明以了解更多详细信息。
考虑到这一点,请使用加引号的标识符(使用反引号)来重写代码,或者重命名标识符越早越好。