sql >> データベース >  >> RDS >> PostgreSQL

Jasper Report:クラス'org.postgresql.util.PGmoney'のフィールド'x'の値を取得できません

    これは、PostgreSQLの moneyのいくつかの理由の1つです。 タイプは非推奨であり、避ける必要があります 。奇妙なことに、同じドキュメントの新しいバージョンでは、非推奨の警告が表示されません しかし、私はその他 それに同意せず、その使用は推奨されるべきではないと考えています。

    可能であれば、数値を使用するようにスキーマを変更してください 代わりに、 numeric(17,2)のように 整数セント、または中間値に対してより正確なもののみを格納する場合。 moneyで作業するのは悪夢です。 HQLでは、Javaの BigDecimal クラス(通常、数値をマップするために使用されます fields)は、itsw算術の構文がひどく不器用であるにもかかわらず、優れています。

    ALTER TABLE blah ALTER COLUMN blahcol TYPE numeric(17,2)USING(regexp_replace(blahcol ::text、'[$、]'、''、'g')::numeric);<を実行します。 / code> お金を忘れて 私があなたならタイプは存在しました。




    1. BLOBをOracleデータベース内の他のBLOBと比較します

    2. INSERTを使用した並行性シナリオ

    3. SQLクエリ複数のテーブル、複数の結合、およびコンマ区切りのリストを含む列フィールド

    4. ソフト削除のベストプラクティス(PHP / MySQL)