If I write a python float to a MySQL database and read it back, the values is not quite conserved. Two of the bits are changed, but I don't understand why. Attached is a script that stores and retrieves a float value from a MySQL database. Also attached is the output from the script. The third and fourth line are the binary representation of the 64-bit float. As can be seen, two bits on the right are different between the two.
I have carried out the same test with sqlite3 and pgdb and these packages did not present any issues - the floats were perfectly conserved.
MySQLdb version: 1.3.0 (r633)
Python version: 2.6
Operating System: Snow Leopard (10.6)