Jiangtao Peng created ARROW-13306: ------------------------------------- Summary: [Java][JDBC] use ResultSetMetaData.getColumnLabel instead of ResultSetMetaData.getColumnName Key: ARROW-13306 URL: https://issues.apache.org/jira/browse/ARROW-13306 Project: Apache Arrow Issue Type: Improvement Components: Java Reporter: Jiangtao Peng
when using JDBC to Arrow utils, sometimes, column alias can not be displayed in final arrow results. For example, here is a result set from query {code:sql} SELECT col AS a FROM table{code} postgres can works properly, arrow result schema contains "a", but mysql arrow result schema contains "col". This is because postgres use field label as column name and column label ([postgres jdbc|https://github.com/pgjdbc/pgjdbc/blob/f61fbfe7b72ccf2ca0ac2e2c366230fdb93260e5/pgjdbc/src/main/java/org/postgresql/jdbc/PgResultSetMetaData.java#L144]), but mysql use column name as label, original column name as name ([mysql jdbc|https://github.com/mysql/mysql-connector-j/blob/18bbd5e68195d0da083cbd5bd0d05d76320df7cd/src/main/user-impl/java/com/mysql/cj/jdbc/result/ResultSetMetaData.java#L176]). Maybe "getColumnLabel" is more fittable for arrow results, instead of "getColumnName". -- This message was sent by Atlassian Jira (v8.3.4#803005)