You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@arrow.apache.org by "Todd Farmer (Jira)" <ji...@apache.org> on 2022/07/12 14:05:02 UTC

[jira] [Assigned] (ARROW-4144) [Java] Arrow-to-JDBC

     [ https://issues.apache.org/jira/browse/ARROW-4144?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Todd Farmer reassigned ARROW-4144:
----------------------------------

    Assignee:     (was: Chen)

This issue was last updated over 90 days ago, which may be an indication it is no longer being actively worked. To better reflect the current state, the issue is being unassigned. Please feel free to re-take assignment of the issue if it is being actively worked, or if you plan to start that work soon.

> [Java] Arrow-to-JDBC
> --------------------
>
>                 Key: ARROW-4144
>                 URL: https://issues.apache.org/jira/browse/ARROW-4144
>             Project: Apache Arrow
>          Issue Type: Improvement
>          Components: Java
>            Reporter: Michael Pigott
>            Priority: Major
>
> ARROW-1780 reads a query from a JDBC data source and converts the ResultSet to an Arrow VectorSchemaRoot.  However, there is no built-in adapter for writing an Arrow VectorSchemaRoot back to the database.
> ARROW-3966 adds JDBC field metadata:
>  * The Catalog Name
>  * The Table Name
>  * The Field Name
>  * The Field Type
> We can use this information to ask for the field information from the database via the [DatabaseMetaData|https://docs.oracle.com/javase/7/docs/api/java/sql/DatabaseMetaData.html] object.  We can then create INSERT or UPDATE statements based on the [list of primary keys|https://docs.oracle.com/javase/7/docs/api/java/sql/DatabaseMetaData.html#getPrimaryKeys(java.lang.String,%20java.lang.String,%20java.lang.String)] in the table:
>  * If the value in the VectorSchemaRoot corresponding to the primary key is NULL, insert that record into the database.
>  * If the value in the VectorSchemaRoot corresponding to the primary key is not NULL, update the existing record in the database.
> We can also perform the same data conversion in reverse based on the field types queried from the database.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)