[ 
https://issues.apache.org/jira/browse/FLINK-15404?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17003873#comment-17003873
 ] 

hehuiyuan commented on FLINK-15404:
-----------------------------------

Hi  [~lzljs3620320]  ,   that is not ok. My usage may be wrong.

I use table-planner , that is ok for select and insert.
{code:java}
ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment();
BatchTableEnvironment tableEnv = BatchTableEnvironment.create(env);
//增加hive支持
String name            = "myhive";
String defaultDatabase = "default";
String hiveConfDir     = 
"/Users/hehuiyuan/softs/hive/apache-hive-2.3.4-bin/conf";
String version         = "2.3.4"; // or 1.2.1

HiveCatalog hive = new HiveCatalog(name, defaultDatabase, hiveConfDir, version);
tableEnv.registerCatalog("myhive", hive);
tableEnv.useCatalog("myhive");
tableEnv.useDatabase("default");

Table staff = tableEnv.sqlQuery("select * from staff");

//tableEnv.sqlUpdate("INSERT INTO staff (name, age, sex) VALUES 
('hehuiyuan5',11,'m')");

DataSet<Row> dataSet = tableEnv.toDataSet(staff, Row.class);

try {
    dataSet.print();
} catch (Exception e) {
    e.printStackTrace();
}
{code}
 

But i use table planner blink ,that is not ok !   That do not insert

 
{code:java}
EnvironmentSettings settings = 
EnvironmentSettings.newInstance().inBatchMode().useBlinkPlanner().build();
TableEnvironment tableEnv = TableEnvironment.create(settings);
//增加hive支持
String name            = "myhive";
String defaultDatabase = "default";
String hiveConfDir     = 
"/Users/hehuiyuan/softs/hive/apache-hive-2.3.4-bin/conf";
String version         = "2.3.4"; // or 1.2.1

HiveCatalog hive = new HiveCatalog(name, defaultDatabase, hiveConfDir, version);
tableEnv.registerCatalog("myhive", hive);
tableEnv.useCatalog("myhive");
tableEnv.useDatabase("default");

Table staff = tableEnv.sqlQuery("select * from staff");
staff.printSchema();

tableEnv.sqlUpdate("INSERT INTO staff (name, age, sex) VALUES 
('hehuiyuan6',11,'m')");

Table stafftest = tableEnv.sqlQuery("select * from stafftest");
stafftest.printSchema();

tableEnv.sqlUpdate("insert into  myhive.`default`.stafftest select * from 
staff");
{code}

> How to insert hive table for  different catalog
> -----------------------------------------------
>
>                 Key: FLINK-15404
>                 URL: https://issues.apache.org/jira/browse/FLINK-15404
>             Project: Flink
>          Issue Type: Wish
>          Components: Table SQL / Planner
>            Reporter: hehuiyuan
>            Priority: Major
>
> I have a hive catalog :
>  
> {code:java}
>     catalog name : myhive 
>     database : default
> {code}
>  
> and  the flink has a default catalog :     
>  
> {code:java}
>     catalog name : default_catalog
>     database : default_database
> {code}
>  
> For example :
> I have a source table 'source_table' that's from kafka   which is register to 
>  default_catalog,
> I want to insert hive table 'hive_table' that is from myhive catalog.
> SQL:
> insert into hive_table select * from source_table;
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to