Hitachi

ノンストップデータベース HiRDB Version 10 UAP開発ガイド


17.11.1 SQLデータ型のマッピング

HiRDBのSQLデータ型とJDBCのSQLデータ型は,完全には一致しません。そのため,JDBCドライバでは,JDBCのSQLデータ型と,接続するHiRDBのSQLデータ型とのマッピング(変換)を実行します。マッピングできないSQLデータ型を使用してアクセスしようとすると,SQLExceptionを投入します。SQLデータ型のマッピングは,ResultSet,PreparedStatement,CallableStatementクラスのgetXXXメソッド及びsetXXXメソッドで実行します。なお,SQLデータ型と,getXXXメソッド及びsetXXXメソッドとのマッピング規則については,JDBC1.0規格又はJDBC2.0基本規格のドキュメントを参照してください。

HiRDBとJDBCのSQLデータ型の対応を次の表に示します。

表17‒103 HiRDBとJDBCのSQLデータ型の対応(Type4 JDBCドライバ)

HiRDBのSQLデータ型

JDBCのSQLデータ型

INTEGER

INTEGER

SMALLINT

SMALLINT

DECIMAL,NUMERIC

DECIMAL(,NUMERIC)※1

FLOAT,DOUBLE PRECISION

FLOAT(,DOUBLE)※1

SMALLFLT,REAL

REAL

CHAR

CHAR

VARCHAR

VARCHAR(,LONGVARCHAR)※1

NCHAR

CHAR

NVARCHAR

VARCHAR(,LONGVARCHAR)※1

MCHAR

CHAR

MVARCHAR

VARCHAR(,LONGVARCHAR)※1

DATE

DATE

TIME

TIME

BLOB

LONGVARBINARY(,BINARY,VARBINARY,BLOB)※1

BINARY

LONGVARBINARY(,BINARY,VARBINARY,BLOB)※1

TIMESTAMP

TIMESTAMP

BOOLEAN※2

BIT

ANY※3

OTHER

INTERVAL YEAR TO DAY

Type4 JDBCドライバでは未サポート

INTERVAL HOUR TO SECOND

ROW

注※1

()内のデータ型は,setNullメソッド,setObjectメソッド,又はregisterOutParameterメソッドの引数にJDBCのSQLデータ型を指定する場合にだけ対応します。HiRDBのSQLデータ型からJDBCのSQLデータ型へマッピングする際には対応しません。

注※2

DatabaseMetaDataのgetTypeInfoメソッドなどで生成される,ResultSetオブジェクトが持つBOOLEAN型の列を指します。

注※3

?パラメタにNULL述語を指定したSQL(? IS 〔NOT〕NULL)での,パラメタのデータ型としてだけ使用されます。