0

我有一种感觉,我在这里问了一个愚蠢的问题。我在从数据库中检索浮点值时遇到问题。

数据库中的字段(我设置为float还是double我都试过了)有值

-3.218364

使用 sqlite3_column_double 读取值时,它返回值

194586

我尝试了各种组合,使用 float、double、NSNumber、CLLocationDegrees 存储它,但一点运气都没有。

我在这里有多愚蠢,我在以前的应用程序中使用了小数,没有任何问题。但我无法弄清楚我在这里做错了什么。

所有帮助表示赞赏!

4

1 回答 1

1

只要您绑定正确的值并使用正确的索引,SQLite 就会存储和检索正确的值。

例如

//prepare insert statement ...
sqlite3_bind_double(statement, 1, -3.218364); //Binding is 1 based

//.. retrieve
double dv = sqlite3_column_double(statement, 0); //Retrieving is 0 based


你不应该得到另一个价值,除非

  1. 您插入了错误的值
  2. 您正在从错误的索引中检索
于 2012-06-25T12:05:20.990 回答