I insert a value 18446744072708321492 as a integer into the table.
In C code,sqlite3_column_type tells me is a type of 2, which is float point
value.
And I usesqlite3_column_double to get it. It returns18446744072708321280, which
is already lost theaccuracy.
Is SQLite not support Uint64 value,
It doesn't support unsigned integers natively, but most of the time it will
effectively upconvert to a larger signed integer. In the case where it's
greater than the maximum int8 it obviously cannot upconvert, so uses a
floating point to approximate.
https://www.sqlite.org/datatype3.html
If you
2 matches
Mail list logo