在IDEA中spark(enableHiveSupport)中使用 insert overwrite時對空表可以正常寫入但是如果表不為空就會報錯處理方法
在網上看到不少回答都是答非所問,或者說更改Project Structre下Modules項目中的Language level 為6 - @Override in interfaces也沒用
1.idea無法spark.sql無法正常運行insert overwrite語句
原因有兩個:
1)mysql-connector-java版本過低(兩種情況)
一個是IDEA中依賴mysql-connector-java版本過低導致報錯
一個是hive中依賴mysql-connector-java版本過低,需要我們把新版本mysql-connectr-java的jar包放到hive中的lib中,對於那個舊版本的我們只需在其后面加個如".bike"的后綴讓其無法識別即可.
2)只開了hiveserver2 而沒開metastore(我就是這原因),因為insert overwrite 必須用到metastore.開啟方法
hive --service metastore
解決方法就這樣簡單,但是網上一些所謂大佬ctrl+c 和ctrl+v的解決方法真心頭大!