Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
sqlite3缩短浮点值_Sqlite_Swift - Fatal编程技术网

sqlite3缩短浮点值

sqlite3缩短浮点值,sqlite,swift,Sqlite,Swift,我做了一个简单的例子: 纬度:String=String.fromCString(UnsafePointer(sqlite3\u column\u text(语句,11)) 数据库中的值为“real”。 在我的数据库里 51.234183426424316(使用Firefox的SQLite管理器进行验证) 有了以上内容,我只得到了以下信息: 51.2341834264243 (最后两位数字缺失,使用坐标不可接受) 有什么解释吗?解决方案?SQLite存储诸如64位IEEE浮点数之类的数字,其有效

我做了一个简单的例子:

纬度:String=String.fromCString(UnsafePointer(sqlite3\u column\u text(语句,11))

数据库中的值为“real”。 在我的数据库里 51.234183426424316(使用Firefox的SQLite管理器进行验证)

有了以上内容,我只得到了以下信息: 51.2341834264243 (最后两位数字缺失,使用坐标不可接受)


有什么解释吗?解决方案?

SQLite存储诸如64位IEEE浮点数之类的数字,其有效位精度为53位,对应于大约15-17位十进制数字

如何设置这样一个数字的显示格式是另一个问题。 如果您想控制它,请使用获取原始值,然后自己将其转换为字符串


(您正在抱怨差异小于可见光的波长…

如果您希望它是
字符串
,为什么它会存储为
实数
?是否应将其存储为
文本
?或者您可以使用
sqlite3\u column\u double
函数吗?它由导入的数据库提供,不在我的控制之下。我要试试双栏