Това е една от няколкото причини парите на PostgreSQL тип беше отхвърлен и трябва да се избягва
. Странно по-новите версии на същата документация не показват предупреждението за оттегляне но аз и други
не съм съгласен с това и смятам, че използването му трябва да се обезкуражава.
Ако изобщо е възможно, променете схемата си, за да използвате numeric вместо това, като numeric(17,2) ако искате да съхранявате само цели числа центове или нещо по-точно за междинни стойности. Ще преживеете кошмарно време, работейки с пари в HQL, до точката, в която дори BigDecimal на Java клас (обикновено се използва за картографиране на numeric полета) е по-добър въпреки ужасно тромавия синтаксис на неговата w аритметика.
Бих направил ALTER TABLE blah ALTER COLUMN blahcol TYPE numeric(17,2) USING ( regexp_replace(blahcol::text, '[$,]', '', 'g')::numeric );код> и забравете парите тип съществуваше на твое място.