Android 在SQLite中插入时间戳保持空
我使用以下代码将带有时间戳列的行插入SQLite数据库:Android 在SQLite中插入时间戳保持空,android,sqlite,timestamp,Android,Sqlite,Timestamp,我使用以下代码将带有时间戳列的行插入SQLite数据库: ContentValues contentValues = new ContentValues(); contentValues.put(LAST_UPDATE, "15-02-2012 11:27:42"); database.insert(TABLE_NAME, null, contentValues ); 当我随后检查表时,带有时间戳(定义为timestamp not null)的列总是null。其他列(代码示例中未显示)正常。有
ContentValues contentValues = new ContentValues();
contentValues.put(LAST_UPDATE, "15-02-2012 11:27:42");
database.insert(TABLE_NAME, null, contentValues );
当我随后检查表时,带有时间戳(定义为
timestamp not null
)的列总是null
。其他列(代码示例中未显示)正常。有什么想法吗?您应该使用以下日期格式在SQLite中插入日期/时间:
DateFormat dateFormatISO8601 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
并以字符串形式检索,如下所示:
String crntDate = dateFormatISO8601.format(new Date());
另外,请确保您的列的类型是
DATETIME
我认为DATETIME的格式应该是YYYY-MM-DD HH:MM:SS
您正在使用的DD-MM-YYYY HH:MM:SS
。试着改变一下,看看是否有效。而且您正在设置contentValues
,但是使用initialValues
进行INSERT
更改日期格式不会更改结果。initialValues
是一个输入错误。我将列类型切换为datetime
,现在它可以工作了。我真的以为我以前成功地使用了时间戳。我想时间戳有不同的格式,但无论如何,很高兴知道它帮助了你:)