我正在创建用于记录气压计数据的SQLite数据库。但是,我不知道在哪里为它声明架构。我的教程没有提到在声明以下内容之前为数据库创建一个类:
static final String TABLE_NAME = "table_sensor_data";
static final String COL_ID = "_id";
static final String COL_VALUE = "value";
static final String COL_TIMESTAMP = "timestamp";
private static final String DB_SCHEMA = "CREATE TABLE " + TABLE_NAME + "("
+ COL_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " + COL_TIMESTAMP
+ " INTEGER NOT NULL, " + COL_VALUE
+ " REAL " + ");";
我希望在应用程序首次运行时实现数据存储,并在每次气压计更改时继续记录数据(使用时间戳),是否有人可以通知我可以使用的声明以确保录制开始并继续?我只需要在onSensorChange()方法中声明,还是在onStart()等其他方法中声明?
答案 0 :(得分:0)
查看Saving Data in SQL Databases教程。它会一步一步指导你。
每当你想保存数据时都应该执行insert(),所以在onSensorChange()中调用它是有意义的。
---------编辑:具有timestamp列的默认值的实体声明
private static final String DB_SCHEMA = "CREATE TABLE " + TABLE_NAME + "("
+ COL_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " + COL_TIMESTAMP
+ " TIMESTAMP DEFAULT CURRENT_TIMESTAMP, " + COL_VALUE
+ " REAL " + ");";