Android SQL DATETIME CURRENT_TIMESTAMP
在我的Android应用程序中,我有一个日期时间字段,其中
-
如何插入设备的当前日期和时间。
-
我可以使用此列对表进行排序或删除较旧的记录
24小时。
这是我的代码:
1 2 3 4 5 6 | public void onCreate(SQLiteDatabase db) { String query ="CREATE TABLE" + TABLE_BLOCKEDSMS +" (" + COLUMN_BLOCKEDSMS +" TEXT," + COLUMN_DATETIME +"DATETIME DEFAULT CURRENT_TIMESTAMP);"; db.execSQL(query); } |
任何帮助将不胜感激。
我认为
即
1 2 3 4 5 6 | public void onCreate(SQLiteDatabase db) { String query ="CREATE TABLE" + TABLE_BLOCKEDSMS +" (" + COLUMN_BLOCKEDSMS +" TEXT," + COLUMN_DATETIME +"DATETIME DEFAULT (datetime('now','localtime')));"; db.execSQL(query); } |
根据评论,语句COLUMN_DATETIME +"DATETIME DEFAULT(datetime('now','localtime')))的部分解释如下: -
COLUMN_DATETIME是列的名称,DATETIME是列的类型(注意SQLite没有严格类型数据类型在SQLite版本3中)。 DEFAULT表示要使用的默认值(可选)。
如果该值是显式的,例如0'A'等,则该值仅遵循DEFAULT。但是,如果通过表达式计算值,则必须将其括在方括号()中。 SQLite有许多功能,其中5个是日期和时间功能。这些是日期,时间,日期时间,julianday和strftime。
可以使用datetime或strftime,但是为此示例/解决方案选择了datetime。因此我们有
datetime的语法是
更多详细信息可以在这里找到SQL作为SQLite理解 - 日期和时间函数