我正在通过Zentus在Java应用程序中使用SQLite。在这种情况下,我需要在数据库中保存和查询JavaJava值。我从其他RDBMS中创建了这个表,如下所示来存储长值:
CREATE TABLE myTable (id INTEGER PRIMARY_KEY, longValue LONG)
此解决方案会产生异常行为,但在阅读SQLite documentation on data types之后,我了解到我的LONG
类型与使用TEXT
=> longValue
存储为文本具有相同的效果。
然后我决定把它改为INTEGER
(它的长度是可变的,可以存储多达64位的整数,这是Java long的长度),这样代码就更整洁了,并且可以节省一些磁盘空间并提高性能,因为我的longValues是作为long
插入和查询的。
在比较了创建的数据库的性能和大小之后,我看不出有什么不同:
CREATE TABLE myTable (id INTEGER PRIMARY_KEY, longValue LONG)
和
CREATE TABLE myTable (id INTEGER PRIMARY_KEY, longValue INTEGER)
对这个话题有什么评论,经历或感受吗?
https://stackoverflow.com/questions/3388098
复制相似问题