How to create a table in a hive using java?

I would like to create a table in hive using Java. To do this, follow these steps:

public class HiveCreateTable { private static String driverName = "com.facebook.presto.jdbc.PrestoDriver"; public static void main(String[] args) throws SQLException { // Register driver and create driver instance try { Class.forName(driverName); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println("haiiiiii"); Connection con = DriverManager.getConnection("jdbc:presto://192.168.1.119:8082/default", "hadoop", "password"); con.setCatalog("hive"); con.setSchema("log"); Statement stmt = con.createStatement(); ResultSet res = stmt.executeQuery("create table access_log2 (cip string, csusername string, cscomputername string)"); System.out.println("Table created."); con.close(); } } 

Error:

Exception in thread "main" java.sql.SQLException: request failed (# 20150731_101653_00008_hv68j): Unknown type for column 'cip'

+4
source share
1 answer

In the above code, you are using the Presto JDBC driver, not Hive. I'm not sure what you are trying to achieve, but Presto supports the following data types, of which String not one:

https://prestodb.io/docs/current/language/types.html

+2
source

All Articles