Am 16.07.2011 15:29 schrieb Maxim Yegorushkin:
This patch extends float handling by supporting nan and inf values along
with a new unit test. It basically always quotes floats to avoid isinf()
and isnan() checks for each and every float value.
Hm, this may work with older Postgres versions, but it's a bit unclean
since it puts quotes arounds normal floats where they do not belong, and
since it relies on the string representation of NaN and Inf in Python
which may differ for different Python versions and is definitely
different from their official representation in Postgres (e.g. 'inf'
instead of 'Infinity' and 'nan' instead of 'NaN'). Newer Postgres
versions may not be so sloppy concerning the input, and indeed Postgres
9.0 does not allow writing 'inf' insted of 'Infinity'. We should better
produce the proper SQL, i.e. the official names with proper case even
though Postgres currently is case-insensitive on input, and we should
not put quotes around numbers.
With regards to date support, I am thinking of handling date and
datetime similar to decimal, that is, to convert strings to date and
datetime when reading rowsets, so that user code does not have to
convert strings to dates. Does it make sense?
This is http://trac.vex.net:8000/pgtracker/ticket/28
But I think we should make it configurable so that old code will not be
broken. The default could be strings in 4.x, and then dates in 5.x.
-- Christoph
_______________________________________________
PyGreSQL mailing list
[email protected]
http://mailman.vex.net/mailman/listinfo/pygresql