I Have a Table WRITE_DATE_DATA
having column DATE_DATA
(DATE
type) and TIMESTAMP_DATA
(TIMESTAMP(6)
Type).
When I am executing:
ResultSet rsmeta = ps.executeQuery("Select DATE_DATA,TIMESTAMP_DATA from WRITE_DATE_DATA")
ResultSetMetaData rsmeta = resultSet.getMetaData() ;
int imax = rsmeta.getColumnCount() ;
HashMap<String, Integer> hmRsColTypes = new HashMap<String, Integer>();
for ( int ii = 0 ; ii < imax ; ii++ )
{
String strColumn = rsmeta.getColumnName(ii+1);
System.out.println(rsmeta.getColumnType(ii+1));// line 1
System.out.println(rsmeta.getColumnType(ii+1));// line 2
}
Output:
at line 1 - TIMESTAMP_DATA
at line 2 -93 Type for java.sql.TimeStamp
at line 1 - DATE_DATA
at line one - 93 Type for java.sql.TimeStamp
Expected data type for DATE_DATE will be 91 Type for java.sql.Date
Why is ResultSetMetaData
returning the wrong data type TimeStamp
instead of Date
data type?
Is this expected behavior, if yes then please share document or should i do something else to handle it.