Temp
JavaからOracleのストアドプロシージャ、ストアドファンクション、パッケージを呼び出す際の注意点
SQLデータ型とJDBCタイプコード、Java型の対応
標準JDBC 1.0 型:
SQL型 | JDBCタイプ | 標準Java型 | Oracle 拡張機能Java 型 |
CHAR | java.sql.Types.CHAR | java.lang.String | oracle.sql.CHAR |
VARCHAR2 | java.sql.Types.VARCHAR | java.lang.String | oracle.sql.CHAR |
LONG | java.sql.Types.LONGVARCHAR | java.lang.String | oracle.sql.CHAR |
NUMBER | java.sql.Types.NUMERIC | java.math.BigDecimal | oracle.sql.NUMBER |
NUMBER | java.sql.Types.DECIMAL | java.math.BigDecimal | oracle.sql.NUMBER |
NUMBER | java.sql.Types.BIT | boolean | oracle.sql.NUMBER |
NUMBER | java.sql.Types.TINYINT | byte | oracle.sql.NUMBER |
NUMBER | java.sql.Types.SMALLINT | short | oracle.sql.NUMBER |
NUMBER | java.sql.Types.INTEGER | int | oracle.sql.NUMBER |
NUMBER | java.sql.Types.BIGINT | long | oracle.sql.NUMBER |
NUMBER | java.sql.Types.REAL | float | oracle.sql.NUMBER |
NUMBER | java.sql.Types.FLOAT | double | oracle.sql.NUMBER |
NUMBER | java.sql.Types.DOUBLE | double | oracle.sql.NUMBER |
RAW | java.sql.Types.BINARY | byte[] | oracle.sql.RAW |
RAW | java.sql.Types.VARBINARY | byte[] | oracle.sql.RAW |
LONGRAW | java.sql.Types.LONGVARBINARY | byte[] | oracle.sql.RAW |
DATE | java.sql.Types.DATE | java.sql.Date | oracle.sql.DATE |
DATE | java.sql.Types.TIME | java.sql.Time | oracle.sql.DATE |
DATE | java.sql.Types.TIMESTAMP | javal.sql.Timestamp | oracle.sql.DATE |
標準JDBC 2.0 型:
SQL型 | JDBCタイプ | 標準Java型 | Oracle 拡張機能Java 型 |
BLOB | java.sql.Types.BLOB | java.sql.Blob | oracle.sql.BLOB |
CLOB | java.sql.Types.CLOB | java.sql.Clob | oracle.sql.CLOB |
ユーザー定義オブジェクト | java.sql.Types.STRUCT | java.sql.Struct | oracle.sql.STRUCT |
ユーザー定義参照 | java.sql.Types.REF | java.sql.Ref | oracle.sql.REF |
ユーザー定義コレクション | java.sql.Types.ARRAY | java.sql.Array | oracle.sql.ARRAY |
Oracle 拡張機能:
SQL型 | JDBCタイプ | 標準Java型 | Oracle 拡張機能Java 型 |
BFILE | oracle.jdbc.OracleTypes.BFILE | 利用不可 | oracle.sql.BFILE |
ROWID | oracle.jdbc.OracleTypes.ROWID | 利用不可 | oracle.sql.ROWID |
REF CURSOR 型 | oracle.jdbc.OracleTypes.CURSOR | java.sql.ResultSet | oracle.jdbc.OracleResultSet |
- 対応外のものは使用不可能?
- すくなくともBoolean型は使用不可能。
参考:
- JDBC 開発者ガイドおよびリファレンス
- 第3章:基本機能
- データ型マッピング
- 第19章:コーディングのヒントおよびトラブルシューティング
- PL/SQLストアドプロシージャのブール型パラメータ
- 第3章:基本機能