Discussion thread | -https://lists.apache.org/thread/d1owrg8zh77v0xygcpb93fxt0jpjdkb3 | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Vote thread | https://lists.apache.org/thread/7jbmg22lnww31sbfdzztwrzgm6bkhjrj | ||||||||||
JIRA |
| JIRA
| |||||||||
Release | -1.18.0 |
Please keep the discussion on the mailing list rather than commenting on the wiki (wiki discussions get unwieldy fast).
...
Currently TIMESTAMP_WITH_LOCAL_TIMEZONE is not exist in java.sql.Types, but it is supported by Flink
. Users can define a field as (f TIMESTAMP(p) WITH LOCAL TIME ZONE)
and set time zone through the connection parameters or dynamic parameters in console by table.local-time-zone
. After that, users can get Timestamp
which will be automatically converted from stored time data into specific Timestamp
according to the given time zone.
...
Java Sql Interfaces
There are many methods in Jdbc Driver, while this FLIP only implement the basic methods first and more methods will be implemented later when they are needed.
...
Code Block | ||
---|---|---|
| ||
/* Jdbc Driver for flink sql gateway *. Only Batch Mode queries are supported. If you force to submit streaming queries, you may get unrecognized updates, deletions and other results in FlinkResultSet. */ public class FlinkDriver implements Driver { /* Connect sql gateway with given url and open/create session with given priperties. */ @Override public Connection connect(String url, Properties info) throws SQLException; } |
...
Code Block | ||
---|---|---|
| ||
/* ResultSet for flink jdbc driver. Only Batch Mode queries are supported. */ public class FlinkResultSet implements ResultSet { /* Get the row kind for the current record If you force to submit streaming queries, you may get unrecognized updates, deletions and other results. */ public RowKind getKind(); class FlinkResultSet implements ResultSet { /* Return true if there are more resuts in result iterator. */ @Override public boolean next() throws SQLException; /* Close the fetch result operation. */ @Override public void close() throws SQLException; /* Get different values according to data type and column index. */ @Override public <V> V getXXX(int columnIndex) throws SQLException. /* Get different values according to data type and column name. */ @Override public <V> V getXXX(String columnName) throws SQLException. } |
...