ページの先頭行へ戻る
Symfoware Server V12.7.0 アップデート情報
FUJITSU Software

3.86 getLongメソッドの仕様変更

変更内容

V5.0L10

データ型がNUMERIC型またはDECIMAL型で、精度15桁を超えるデータが格納されているとき、ResultSet.getLongメソッドを使用してデータを取り出すと、下1桁または2桁のデータが不定のデータになります。

たとえば、列定義がDECIMAL(18,0)の列から16桁データ“9999999999999991”を取り出すと、データが16桁の“9999999999999992”になって出力されます。

V6.0L10以降

データ型がNUMERIC型またはDECIMAL型で、精度15桁を超えるデータが格納されているとき、ResultSet.getLongメソッドを使用してデータを取り出すと、格納されたデータどおりの値を取得可能です。

たとえば、列定義がDECIMAL(18,0)の列から16桁データ“9999999999999991”を取り出すと、16桁の“9999999999999991”が返却されます。

非互換

データ型がNUMERIC型またはDECIMAL型で、精度15桁を超えるデータが格納されているとき、ResultSet.getLongメソッドを使用すると、JDBCドライバから、アプリケーションに返却されるデータが変更されます。

対処方法

JDBCデータソースの登録時または、アプリケーションに指定するURLに、JDBCドライバの以下のオプションを指定してください。オプションを指定することで、V5.0L10と同様の動作になります。

COMPATIBLE_MODE=(3)