sql >> Databasteknik >  >> RDS >> PostgreSQL

Decimalfält Konverterar noll till 0E-10

Jag har också stött på det här problemet och fått reda på att allt faktiskt fungerar som det ska. I Python om du faktiskt definierar något sånt här Decimal("0.0000000000") du kommer att se detta i konsolen:

>>> Decimal("0.0000000000")
Decimal('0E-10')

I min situation konverterade jag från SQLite3 backend till PostgreSQL för produktion. Allt fungerade bra i SQLite, eftersom det inte explicit visar (eller lagrar) alla decimalsiffror. Så om du infogar 0 i ett SQLite-nummerfält och sedan markera det, får du 0 .

Men om du infogar 0 i en PostgreSQL numeriskt fält kommer det att fylla noll på decimalen och infoga 0.0000000000 . Så när Python sätter detta i en decimal kommer du att se Decimal("0E-10") .

UPPDATERING – fixat i Django 1.8




  1. standard för kolumn xxxx kan inte castas automatiskt till typ boolean i Postgres DB

  2. Oracle:Connect By Loop i användardata

  3. MySQL trunkerar sammanlänkade resultat av en GROUP_CONCAT-funktion

  4. PostgreSQL - avrundning av flyttal