페이지

2013년 9월 11일 수요일

Mysql Connector/J 5.1

Mysql Java 용 JDBC 드라이버 입니다.

http://dev.mysql.com/downloads/connector/j/
다운로드 링크입니다.

MSI Installer 설치 파일은 어디에 파일들을 설치했는지 알려주지도 않고 설치가 끝납니다.
불편해서 지우고 Select Platform: 을 Platform Independent 로 변경하고 압축파일을 받아서 사용했습니다.

압축을 해제하고 jar파일(mysql-connector-java-5.1.26-bin.jar)을 복사해서 사용했습니다.

mysql-connector-java-3.1.10-bin.jar 를 사용하다가 최신버전으로 변경하였는데요. 적용과정에서 한가지 문제가 되었던 부분이 있습니다.

메타데이터를 사용하는 부분입니다.
ResultSetMetaData rsmd = resultSet.getMetaData();

3버전에서 rsmd.getColumnName(no) 는 필드의 Alias 값을 반환했습니다.
5버전에서는 rsmd.getColumnLabel(no) 를 사용해야 Alias 값을 받을 수 있고 rsmd.getColumnName(no) 는 컬럼의 실제 이름값을 반환합니다.

예를 들면 아래와 같은 쿼리가 있다면
select a as b from table;

3버전에서 rsmd.getColumnName(no) 는 'b'
5버전에서 rsmd.getColumnName(no) 는 'a'
5버전에서 rsmd.getColumnLabel(no) 는 'b'
가 됩니다.

댓글 없음:

댓글 쓰기