nani
nani

Reputation: 165

how to create a table in hive using java?

I would like to create a table in hive using Java. Using the following way to do it:

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: Query failed (#20150731_101653_00008_hv68j): Unknown type for column 'cip'

Upvotes: 4

Views: 637

Answers (1)

mattinbits
mattinbits

Reputation: 10428

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

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

Upvotes: 2

Related Questions