Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

JIRA
Discussion threadhttps://lists.apache.org/thread/d1owrg8zh77v0xygcpb93fxt0jpjdkb3
Vote threadhttps://lists.apache.org/thread/7jbmg22lnww31sbfdzztwrzgm6bkhjrj
JIRA

Jira
serverASF JIRA
serverId5aa69414-a9e9-3523-82ec-879b028fb15b

keyFLINK-31496

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
languagejava
/* Jdbc Driver for flink sql gateway. */
public class FlinkDriver implements Driver {
    /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
languagejava
/* 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.
}

...