JDBC ResultSet이 있고 getLong() 또는 getshort() 메서드를 호출한다고 가정 해보십시오.JDBC 결과 집합에서 getLong() 또는 getShort()가 int 결과 열에서 호출 될 때 어떤 일이 발생해야합니까?
다음 SQL 유형 {SMALLINT, INT, BIGINT} 중 어느 것을 오래 가져야하고 어떤 유형의 오류가 발생해야합니까?
즉, INT가 있고 SMALLINT (A short)를 원한다면 얻을 수 있습니까? 아니면 오류가 있습니까? 마찬가지로 INT가 있고 BIGINT (long)을 원한다면 얻을 수 있습니까? 아니면 오류가 있습니까?
Javadocs (아래 나열 됨)는 아무 것도 말하지 않습니다.
공공 긴 getLong (INT의 columnIndex에) 긴 Java 프로그램 언어의이 ResultSet 객체의 예외 : SQLException
Retrieves the value of the designated column in the current row
가 발생합니다.
Parameters: columnIndex - the first column is 1, the second is 2, ... Returns: the column value; if the value is SQL NULL, the value returned is 0 Throws: SQLException - if a database access error occurs
Wonderful ... JDBC의 ResultSet에 대한 래퍼를 작성 중이며 구현에 의존하지 않는 int 유형을 명확하게 해석하고 싶습니다. 이것을 찾아 주셔서 감사합니다! – Uri
DataBaseMetaData.supportsConvert (int fromType, int toType)를 호출하여 제공된 구현이 주어진 변환을 지원하는지 확인할 수 있습니다. – Yishai