我很難使用 Intellij或帶有 Scala 的基本命令列連接到 hive 資料庫(也會對 java 感到滿意)。過去,我能夠通過將其添加到庫 mysql-Connector 來連接到 MYSQL 資料庫。但我無法以某種方式將 jar 檔案添加到它作業的專案結構中。
并使事情變得更加困難。我已經安裝了帶有 hive、spark、hadoop 的 ubuntu,我正在通過網路連接到它。
有什么辦法可以在 sbt 檔案上添加依賴項嗎?
最后,我知道有類似的問題,但它們沒有詳細說明如何從 scala 連接到 hive 資料庫



`import java.sql.SQLException;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.sql.DriverManager;
object HiveJdbcClient extends App {
val driverName = "org.apache.hadoop.hive.jdbc.HiveDriver";
Class.forName(driverName);
val con=DriverManager.getConnection("jdbc:hive://http://192.168.43.64:10000/default", "", "");
val stmt = con.createStatement();
val tableName = "testHiveDriverTable";
stmt.executeQuery("drop table " "wti");
var res = stmt.executeQuery("create table " tableName " (key int, value string)");
// select * query
var sql = "select * from " tableName;
res = stmt.executeQuery(sql);
while (res.next()) {System.out.println(String.valueOf(res.getInt(1)) "\t" res.getString(2));
}
// regular hive query
sql = "select count(1) from " tableName;
res = stmt.executeQuery(sql);
while (res.next()) {
System.out.println(res.getString(1));
}
}`
uj5u.com熱心網友回復:
hive 3.1.2的驅動名稱不正確,應該是
org.apache.hive.jdbc.HiveDriver
參見https://hive.apache.org/javadocs/r3.1.2/api/org/apache/hive/jdbc/HiveDriver.html
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/347930.html
