ORMLite时间戳恢复错误

时间:2014-01-29 17:50:04

标签: android timestamp ormlite recovery

我在Android应用上运行ORMlite。我创建了一个带有Timestamp字段的@DatabaseTable类。

@DatabaseTable
public class Cliente {
    @DatabaseField
    private Timestamp dateinicio;
}

我可以插入项目但是当我尝试恢复数据时出现此错误:

java.sql.SQLException: Could not assign object 'Wed Jan 29 13:35:01 CET 2014'
    to field FieldType:name=dateinicio,class=Cliente

我想这一定是一个典型的错误,但我无法解决它。

1 个答案:

答案 0 :(得分:0)

您尝试使用现有数据或ORMLite是否为您存储了此日期?无论哪种方式,您都必须匹配Sqlite支持的格式。

ORMLite内部使用"yyyy-MM-dd HH:mm:ss.SSSSSS"。您可以使用以下内容指定格式,其中...将替换为与您的数据匹配的格式。

@DatabaseField(format = "...")
private Timestamp dateinicio;

Sqlite官方支持以下日期格式。

  • YYYY-MM-DD
  • YYYY-MM-DD HH:MM
  • YYYY-MM-DD HH:MM:SS
  • YYYY-MM-DD HH:MM:SS.SSS
  • YYYY-MM-DDTHH:MM
  • YYYY-MM-DDTHH:MM:SS
  • YYYY-MM-DDTHH:MM:SS.SSS
  • HH:MM
  • HH:MM:SS
  • HH:MM:SS.SSS
  • 现在
  • DDDDDDDDDD

请在此处查看此答案:ORMLite query date format issue