2

SQLite に移行しようとしています。私の C++ プログラムではunsigned int key、ID の保存に使用しています。C++ プログラムから SQLite にデータをシリアル化し、それを逆シリアル化するか、データベースを参照すると、列に負の値 (符号付き) が表示されます。

unsigned intsこの関数を使用してシリアル化をバインドします。

sqlite3_bind_int(stmt, 1, key);

キーのテーブル列はINT、作成中にとして宣言されます。多分ここは私の間違いですか?

SQLiteに正しくシリアルunsigned ints化し、変更せずにロードする方法について何か提案はありますか?

4

1 に答える 1

3

SQLite's type system doesn't support unsigned integers. But you can use sqlite3_bind_int64 instead: unsigned int (assuming it's 32-bit) can be losslessly converted to int64_t.

于 2013-06-26T04:44:12.037 に答える