On Sun, 2010-12-26 at 18:17 +0100, Sylvain Pointeau wrote: > unsigned 64 bit types are not supported by sqlite3. > So unsigned long long and unsigned long (when 64 bit) fail the > testsuite. > I do not really know how to best handle that. > Maybe we should drop the support for this type from sqlite3 > backend? > > > I though that taking the data with sqlite3_column_int64 > then casting with unsigned long long would have been good. > > > and taking a text then transforming it into a unsigned long long would > be better?
no sqlite3 does not support it. Example: >sqlite3 >CREATE TABLE test (num UNSIGNED BIG INT); >INSERT INTO TEST (num) VALUES(9223372036854775807, 9223372036854775808); >SELECT * FROM test; 9223372036854775807 9.22337203685478e+18 you see also the text representation gets truncated (maybe saving it as blob would be a workaround). you run the testsuite by typing: make check or by running the tests manually from the bin folder in your build directory: #faster enough for this test ./bin/soci_sqlite3_test #more extensive tests ./bin/soci_sqlite3_test "dummy connect string" Unfortunately a good test for 64 bit unsigned is still missing as this is a recent addition. But you can add one in common_tests by just copying the 32 bit unsigned test and increasing the number to 64 bit.
signature.asc
Description: This is a digitally signed message part
------------------------------------------------------------------------------ Learn how Oracle Real Application Clusters (RAC) One Node allows customers to consolidate database storage, standardize their database environment, and, should the need arise, upgrade to a full multi-node Oracle RAC database without downtime or disruption http://p.sf.net/sfu/oracle-sfdevnl
_______________________________________________ Soci-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/soci-users
