wya*_*att 5 database sqlite timestamp
我正在尝试创建一个名为rawData的数据库.db将为id提供一个列,一个外部用户id(来自另一个表的_id),数据以及最后一个时间戳.
我的问题是如何在SQlite中创建时间戳并将其存储在数据库中,该列应该是什么类型,文本?数据库需要能够每秒存储150个浮点值,并为这150个条目中的每个条目添加时间戳.另外,由于SQlite没有float类型,我应该使用real作为列类型吗?
public class RawDatabase{
public static final String TABLE_RAW_DATA = "rawData";
public static final String COLUMN_ID = "_id";
public static final String COLUMN_FOREIGN_USER_ID = "foreignUserId";
public static final String COLUMN_DATA = "data";
public static final String COLUMN_TIME_STAMP = "timeStamp";
// Database creation sql statement
private static final String DATABASE_CREATE = "create table "
+ TABLE_RAW_DATA + "(" + COLUMN_ID
+ " integer primary key autoincrement, " + COLUMN_FOREIGN_USER_ID
+ " integer, " + COLUMN_DATA
+ " real, " + COLUMN_TIME_STAMP
+ " text not null);";
}
Run Code Online (Sandbox Code Playgroud)
CL.*_*CL. 23
该文件说:
SQLite没有为存储日期和/或时间而预留的存储类.相反,SQLite 的内置日期和时间函数能够将日期和时间存储为TEXT,REAL或INTEGER值:
- TEXT为ISO8601字符串("YYYY-MM-DD HH:MM:SS.SSS").
- 真实如朱利安日数,根据公历4714年11月24日格林威治中午以来的天数.
- INTEGER as Unix Time,自1970-01-01 00:00:00 UTC以来的秒数.
应用程序可以选择以任何这些格式存储日期和时间,并使用内置的日期和时间函数在格式之间自由转换.
如果只需要秒精度,请使用Unix时间格式的整数.否则,使用浮动指针数字表示小数秒.
| 归档时间: |
|
| 查看次数: |
31958 次 |
| 最近记录: |