Changeset 328 for trunk/module/pg.py


Ignore:
Timestamp:
Sep 16, 2008, 6:29:48 PM (11 years ago)
Author:
cito
Message:

If available, use decimal.Decimal for numeric types.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/module/pg.py

    r321 r328  
    66# Improved by Christoph Zwerschke
    77#
    8 # $Id: pg.py,v 1.54 2007-08-10 15:55:04 darcy Exp $
     8# $Id: pg.py,v 1.55 2008-09-16 22:29:47 cito Exp $
    99#
    1010
     
    2121from _pg import *
    2222from types import *
     23try:
     24    from decimal import Decimal
     25    set_decimal(Decimal)
     26except ImportError:
     27    pass # Python < 2.4
    2328
    2429# Auxiliary functions which are independent from a DB connection:
     
    2833        if d is None:
    2934                return 'NULL'
    30         if t in ('int', 'seq', 'decimal'):
     35        if t in ('int', 'seq', 'float', 'num'):
    3136                if d == '': return 'NULL'
    3237                return str(d)
     
    323328                                t[att] = 'int'
    324329                        elif typ.startswith('float'):
    325                                 t[att] = 'decimal'
     330                                t[att] = 'float'
     331                        elif typ.startswith('numeric'):
     332                                t[att] = 'num'
    326333                        elif typ.startswith('abstime'):
    327334                                t[att] = 'date'
     
    506513                for k, t in fnames.items():
    507514                        if k == 'oid': continue
    508                         if t in ['int', 'decimal', 'seq', 'money']:
     515                        if t in ['int', 'seq', 'float', 'num', 'money']:
    509516                                a[k] = 0
    510517                        elif t == 'bool':
     
    547554
    548555# if run as script, print some information
     556
    549557if __name__ == '__main__':
    550558        print 'PyGreSQL version', version
Note: See TracChangeset for help on using the changeset viewer.