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

Jin Xing edited comment on CALCITE-3716 at 2/6/20 1:49 AM:
-----------------------------------------------------------

Thanks a lot Julian ~

I also want mention that the behavior of getColumnName is different between Sql 
systems;

When I have below table and run sql by JDBC connect:
{code:java}
Table: test (col0 int)
select a x, 1 y from test{code}
ColumnName and ColumnLabel returned as below:
{code:java}
Mysql:
ResultSet#getMetadata().getColumnName(1): "a"
ResultSet#getMetadata().getColumnLabel(1): "x"
ResultSet#getMetadata().getColumnName(1): "y"
ResultSet#getMetadata().getColumnLabel(1): "y"

Postgre:
ResultSet#getMetadata().getColumnName(1): "x"
ResultSet#getMetadata().getColumnLabel(1): "x"
ResultSet#getMetadata().getColumnName(1): "y"
ResultSet#getMetadata().getColumnLabel(1): "y"{code}
I didn't find which one is the standard behavior from JDBC spec; the behavior 
of Calcite is consistent with Mysql now;


was (Author: [email protected]):
Thanks a lot Julian ~

I also want mention that the behavior of getColumnName is different between Sql 
systems;

When I have below table and run sql by JDBC connect:
{code:java}
Table: test (col0 int)
select a x, 1 y from test{code}
ColumnName and ColumnLabel returned as below:
{code:java}
Mysql:
ResultSet#getMetadata().getColumnName(1): "a"
ResultSet#getMetadata().getColumnLabel(1): "x"
ResultSet#getMetadata().getColumnName(1): "y"
ResultSet#getMetadata().getColumnLabel(1): "y"

Postgre:
ResultSet#getMetadata().getColumnName(1): "x"
ResultSet#getMetadata().getColumnLabel(1): "x"
ResultSet#getMetadata().getColumnName(1): "y"
ResultSet#getMetadata().getColumnLabel(1): "y"{code}
I didn't find which one is standard behavior from JDBC spec; Behavior of 
Calcite is consistent with Mysql;

> ResultSetMetaData.getTableName should return empty string, not null, when 
> column does not map to a table
> --------------------------------------------------------------------------------------------------------
>
>                 Key: CALCITE-3716
>                 URL: https://issues.apache.org/jira/browse/CALCITE-3716
>             Project: Calcite
>          Issue Type: Bug
>            Reporter: Julian Hyde
>            Assignee: Jin Xing
>            Priority: Major
>              Labels: pull-request-available
>          Time Spent: 50m
>  Remaining Estimate: 0h
>
> Per the [JDBC 
> spec|https://docs.oracle.com/javase/8/docs/api/java/sql/ResultSetMetaData.html#getTableName-int-],
>  {{ResultSetMetaData.getTableName}} should return empty string, not null, 
> when column does not map to a table. Similarly getCatalogName, getSchemaName, 
> getColumnName.



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

Reply via email to