L.S.
It looks like there's something wrong with the endiannes when using sqlite3
(v3.2.2) on an ARM architecture (SA1100 nanoboard) while storing floating
point data.
Databases created on i386 can basically be read and used on the ARM device and
viceversa. However, data that is stored using the REAL storage class seems to
be misinterpreted when it is read on the 'other' architecture.
This seems to be independent of which architecture created the database and/or
the table. So, doing this on one architecture:
sqlite3 test.db
create table f1 (value numeric);
insert into f1 values (12.345);
and then (after transferring the database file) doing a select on f1 using the
other architecture will yield a result like:
-1.20245408977952e+111
updating this table/row/column with some value and re-reading it will give the
correct result, but then after switching sides the other architecture will
return the wrong number.
Any ideas what might be causing this as far as sqlite is concerned?
--
Best,
Frank.