スケーラブルデータベースサーバ HiRDB Version 8 UAP開発ガイド
JDBC2.0基本規格では,幾つかの新たなJDBC SQLタイプが追加されました。追加されたJDBC SQLタイプを次に示します。
ただし,JDBCドライバではARRAY以外のJDBC SQLタイプは使用できません。
ResultSetクラス及びCallableStatementクラスのgetXXXメソッドと各JDBC SQLタイプとのマッピングを表17-6,表17-7に示します。
マッピングできないJDBC SQLタイプに対してgetXXXメソッドが呼び出された場合,SQLExceptionを投入します。接続DBがどのJDBC SQLタイプを使用できるかについては「17.12 データ型,文字コード」を参照してください。
なお,getUnicodeStreamメソッドがJDBC2.0基本規格で推奨されないメソッドとなったため,代わりにgetCharacterStreamが追加されました。
表17-6 ResultSetクラス及びCallableStatementクラスのgetXXXメソッドとJDBC SQLタイプとのマッピング(1/2)
| getXXXメソッド | JDBC SQLタイプ | |||||
|---|---|---|---|---|---|---|
| SMALLINT | INTEGER | FLOAT | REAL | DECIMAL | CHAR | |
| getByte | ○ | ○ | ○ | ○ | ○ | ○※2 |
| getShort | ◎ | ○ | ○ | ○ | ○ | ○※2 |
| getInt | ○ | ◎ | ○ | ○ | ○ | ○※2 |
| getLong | ○ | ○ | ○ | ○ | ○ | ○※2 |
| getFloat | ○ | ○ | ○ | ◎ | ○ | ○※2 |
| getDouble | ○ | ○ | ◎ | ○ | ○ | ○※2 |
| getBigDecimal | ○ | ○ | ○ | ○ | ◎ | ○※2 |
| getBoolean | ○ | ○ | ○ | ○ | ○ | ○ |
| getString | ○ | ○ | ○ | ○ | ○ | ◎ |
| getBytes | × | × | × | × | × | × |
| getDate | × | × | × | × | × | ○※2 |
| getTime | × | × | × | × | × | ○※2 |
| getTimestamp | × | × | × | × | × | ○※2 |
| getAsciiStream | × | × | × | × | × | ○ |
| getUnicodeStream | × | × | × | × | × | ○ |
| getBinaryStream | × | × | × | × | × | × |
| getObject | ○ | ○ | ○ | ○ | ○ | ○ |
| getCharacterStream | × | × | × | × | × | ○ |
| getArray | × | × | × | × | × | × |
| getBlob | × | × | × | × | × | × |
| getClob※1 | × | × | × | × | × | × |
| getRef※1 | × | × | × | × | × | × |
表17-7 ResultSetクラス及びCallableStatementクラスのgetXXXメソッドとJDBC SQLタイプとのマッピング(2/2)
| getXXXメソッド | JDBC SQLタイプ | |||||
|---|---|---|---|---|---|---|
| VARCHAR | DATE | TIME | TIMESTAMP | LONGVARBINARY | ARRAY | |
| getByte | ○※2 | × | × | × | × | × |
| getShort | ○※2 | × | × | × | × | × |
| getInt | ○※2 | × | × | × | × | × |
| getLong | ○※2 | × | × | × | × | × |
| getFloat | ○※2 | × | × | × | × | × |
| getDouble | ○※2 | × | × | × | × | × |
| getBigDecimal | ○※2 | × | × | × | × | × |
| getBoolean | ○ | × | × | × | × | × |
| getString | ◎ | ○ | ○ | ○ | ○ | × |
| getBytes | × | × | × | × | ○ | × |
| getDate | ○※2 | ◎※3 | × | ○ | × | × |
| getTime | ○※2 | × | ◎ | ○ | × | × |
| getTimestamp | ○※2 | ○ | × | ◎ | × | × |
| getAsciiStream | ○ | × | × | × | ○ | × |
| getUnicodeStream | ○ | × | × | × | ○ | × |
| getBinaryStream | × | × | × | × | ◎ | × |
| getObject | ○ | ○ | ○ | ○ | ○ | ○ |
| getCharacterStream | ○ | × | × | × | ○ | × |
| getArray | × | × | × | × | × | ◎ |
| getBlob | × | × | × | × | ○ | × |
| getClob※1 | × | × | × | × | × | × |
| getRef※1 | × | × | × | × | × | × |
PreparedStatementクラス及びCallableStatementクラスのsetXXXメソッドと,マッピングされるJDBC SQLタイプを次の表に示します。使用できないJDBC SQLタイプの場合,setXXXメソッドはSQLExceptionを投入します。接続DBがどのJDBC SQLタイプを使用できるかについては「17.12 データ型,文字コード」を参照してください。
なお,setUnicodeStreamメソッドがJDBC2.0基本規格で推奨されないメソッドとなったため,代わりにsetCharacterStreamが追加されました。
表17-8 PreparedStatementクラスのsetXXXメソッドと,マッピングされるJDBC SQLタイプ
| PreparedStatementクラスのsetXXXメソッド | マッピングされるJDBC SQLタイプ |
|---|---|
| setCharacterStream | CHAR,VARCHAR,又はLONGVARCHAR |
| setRef※ | REF |
| setBlob | LONGVARBINARY |
| setClob※ | CLOB |
| setArray | ARRAY |
PreparedStatementクラス及びCallableStatementクラスのsetXXXメソッドと各JDBC SQLタイプとのマッピングを表17-9,表17-10に示します。
表17-9 PreparedStatementクラス及びCallableStatementクラスのsetXXXメソッドと各JDBC SQLタイプとのマッピング(1/2)
| setXXXメソッド | JDBC SQLタイプ | |||||
|---|---|---|---|---|---|---|
| SMALLINT | INTEGER | FLOAT | REAL | DECIMAL | CHAR | |
| setByte | ○ | ○ | ○ | ○ | ○ | ○ |
| setShort | ◎ | ○ | ○ | ○ | ○ | ○ |
| setInt | ○ | ◎ | ○ | ○ | ○ | ○ |
| setLong | ○ | ○ | ○ | ○ | ○ | ○ |
| setFloat | ○ | ○ | ○ | ◎ | ○ | ○ |
| setDouble | ○ | ○ | ◎ | ○ | ○ | ○ |
| setBigDecimal | ○ | ○ | ○ | ○ | ◎ | ○ |
| setBoolean | ○ | ○ | ○ | ○ | ○ | ○ |
| setString | ○ | ○ | ○ | ○ | ○ | ◎ |
| setBytes | × | × | × | × | × | × |
| setDate | × | × | × | × | × | ○ |
| setTime | × | × | × | × | × | ○ |
| setTimestamp | × | × | × | × | × | ○ |
| setAsciiStream | × | × | × | × | × | ○ |
| setUnicodeStream | × | × | × | × | × | ○ |
| setBinaryStream | × | × | × | × | × | × |
| setObject | ○ | ○ | ○ | ○ | ○ | ○ |
| setCharacterStream | × | × | × | × | × | ○ |
| setArray | × | × | × | × | × | × |
| setBlob | × | × | × | × | × | × |
| setClob※ | × | × | × | × | × | × |
| setRef※ | × | × | × | × | × | × |
表17-10 PreparedStatementクラス及びCallableStatementのsetXXXメソッドと各JDBC SQLタイプとのマッピング(2/2)
| setXXXメソッド | JDBC SQLタイプ | |||||
|---|---|---|---|---|---|---|
| VARCHAR | DATE | TIME | TIMESTAMP | LONGVARBINARY | ARRAY | |
| setByte | ○ | × | × | × | × | × |
| setShort | ○ | × | × | × | × | × |
| setInt | ○ | × | × | × | × | × |
| setLong | ○ | × | × | × | × | × |
| setFloat | ○ | × | × | × | × | × |
| setDouble | ○ | × | × | × | × | × |
| setBigDecimal | ○ | × | × | × | × | × |
| setBoolean | ○ | × | × | × | × | × |
| setString | ◎ | ○ | ○ | ○ | ○ | × |
| setBytes | × | × | × | × | ○ | × |
| setDate | ○ | ◎※2 | × | ○ | × | × |
| setTime | ○ | × | ◎ | ○ | × | × |
| setTimestamp | ○ | ○ | × | ◎ | × | × |
| setAsciiStream | ○ | × | × | × | ○ | × |
| setUnicodeStream | ○ | × | × | × | ○ | × |
| setBinaryStream | × | × | × | × | ◎ | × |
| setObject | ○ | ○ | ○ | ○ | ○ | ○ |
| setCharacterStream | ○ | × | × | × | ○ | × |
| setArray | × | × | × | × | × | ◎ |
| setBlob | × | × | × | × | ○ | × |
| setClob※1 | × | × | × | × | × | × |
| setRef※1 | × | × | × | × | × | × |
All Rights Reserved. Copyright (C) 2006, 2016, Hitachi, Ltd.