Hi,

I may have found a bug in sql.Binary(). Here is the patch:

--- pythonize.py 2013-02-03 15:22:09.217186598 +0100
+++ pythonize.py.fix 2013-02-03 15:23:34.613187703 +0100
@@ -119,7 +119,7 @@
 
 def Binary(data):
     """returns binary encoding of data"""
-    return ''.join([hex(ord(i))[2:] for i in data]).upper()
+    return ''.join(["%02X" % ord(i) for i in data])
 
 def DateFromTicks(ticks):
     """Convert ticks to python Date"""

The hex() built-in returns three character string for integers lower than 15. This combined with the original code's [2:] results in corrupt string representations of binary objects having bytes with these values.

cheers
Mate