Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在ApacheCalcite中插入数据_Java_Sql Server_Jakarta Ee_Apache Calcite - Fatal编程技术网

Java 如何在ApacheCalcite中插入数据

Java 如何在ApacheCalcite中插入数据,java,sql-server,jakarta-ee,apache-calcite,Java,Sql Server,Jakarta Ee,Apache Calcite,我通过ApacheCalcite将数据表单SQL插入到文件中 Class.forName("org.apache.calcite.jdbc.Driver"); Connection connection = DriverManager.getConnection("jdbc:calcite:"); CalciteConnection calciteConnection = connection.unwrap(CalciteConnection.class); SchemaPlus roo

我通过ApacheCalcite将数据表单SQL插入到文件中

 Class.forName("org.apache.calcite.jdbc.Driver");
 Connection connection = DriverManager.getConnection("jdbc:calcite:");
 CalciteConnection calciteConnection = connection.unwrap(CalciteConnection.class);
 SchemaPlus rootSchema = calciteConnection.getRootSchema(); 
 JdbcSchema jdbcSchema = JdbcSchema.create(rootSchema, "TRUNKDB", dataSource,  null, "dbo");       
 rootSchema.add("XXXX", jdbcSchema);

 /*CSV Schema*/
 File csvDir = new File("/home/nanobi/Drill/CSV/");
 // SchemaPlus schema = rootSchema.add("s", new CsvSchema(csvDir,null)); 
 rootSchema.add("CSV", new CsvSchema(csvDir, Flavor.SCANNABLE));

 Statement statement = connection.createStatement();

 int resultSet =   statement.executeUpdate("INSERT into \"CSV\".\"p\"(\"Name\") select \"name\" from \"TRUNKDB\".\"nbmdc_nanomarts\"");
我犯了一个错误

Exception in thread "main" java.sql.SQLException: Error while executing SQL "INSERT into "CSV"."p"("Name") select 'p' from "TRUNKDB"."nbmdc_nanomarts"": Node [rel#29:Subset#3.ENUMERABLE.[]] could not be implemented; planner state:

Root: rel#29:Subset#3.ENUMERABLE.[]
Original rel:


    Sets:
    Set#0, type: RecordType(VARCHAR(45) row_id, VARCHAR(45) si_id, VARCHAR(500) name, VARCHAR(500) description, VARCHAR(255) icon_path,
VARCHAR(255) icon_content, VARCHAR(255) active_flag, TIMESTAMP(3)
created_datetime, VARCHAR(45) created_by_user_id, TIMESTAMP(3)
updated_datetime, VARCHAR(45) updated_by_user_id, VARCHAR(500)
nanomart_xml_filepath, VARCHAR(255) db_username, VARCHAR(255)
db_user_password, VARCHAR(255) dbase_name, VARCHAR(255) db_url,
VARCHAR(255) db_schema_name, CHAR(1) is_mandatory, CHAR(1)
is_load_lock, VARCHAR(45) mart_type, VARCHAR(255) db_driver,
VARCHAR(255) load_frequency, CHAR(1) is_date_table, CHAR(1) is_alias,
VARCHAR(500) nbmdc_n, VARCHAR(45) master_flag, VARCHAR(50)
nbmdm_repository_row_id, CHAR(1) is_hierarchical, VARCHAR(4000)
inplacedetail)
        rel#8:Subset#0.JDBC.TRUNKDB.[], best=rel#0, importance=0.6561
            rel#0:JdbcTableScan.JDBC.TRUNKDB.[](table=[TRUNKDB, nbmdc_nanomarts]), rowcount=100.0, cumulative cost={100.0 rows, 101.0
cpu, 0.0 io}

不幸的是方解石目前不支持修改CSV文件。仅对JDBC表进行了修改。

statement.executeUpdate(“插入\“TRUNKDB\”table3\”(\“name\”)。从\“CSV\”branchmerge\“b”中选择b.BRANCH\u代码);现在我插入到MSSQL,它显示相同的错误抱歉,它不清楚。修改支持不是开箱即用的。在这方面已经做了一些工作,但支持还没有完成。我想知道现在我们是否可以执行插入和更新到CSV?