首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ContentValues put方法

ContentValues put方法
EN

Stack Overflow用户
提问于 2012-04-15 17:42:23
回答 2查看 13.1K关注 0票数 3

在db端,checkInTimecheckOutTime的类型为TIMESTAMP

在我的java代码中,checkInTimecheckOutTime的类型也是java.sql.Timestamp

为了将一条记录插入到数据库中,我使用了这段代码:

代码语言:javascript
复制
1. ContentValues contentValues=new ContentValues();

    2. contentValues.put(USER_ID, userId);
    3. contentValues.put(ROOM_ID, roomId);
    4. contentValues.put(CHECK_IN, checkInTime);
    5. contentValues.put(CHECK_OUT, checkOutTime);

    6. return database.insert(MRM_BOOKING_DETAILS_TABLE, null, contentValues);

但是我在第4行和第5行收到了编译错误,因为它们不需要java.sql.Timestamp类型的内容

我看不到ContentValues的任何put方法会在它的第二个参数中接受类型java.sql.Timestamp。请建议在这种情况下如何传递java.sql.Timestamp,以便我也可以删除编译错误。

谢谢,

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-04-15 19:40:05

我建议你使用DATETIME而不是TIMESTAMP。它在处理日期和时间时更加通用。

此外,在插入数据库或从数据库读取数据时,可以使用SimpleDateFormat来解析日期时间值。

代码语言:javascript
复制
final SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

更新:

尝试如下所示:

代码语言:javascript
复制
final SimpleDateFormat parser = new SimpleDateFormat("yyyy-MM-ddTHH:mm:ss.SSS");

contentValues.put(CHECK_IN, parser.format(checkInTime));
contentValues.put(CHECK_OUT, parser.format(checkOutTime));
票数 7
EN

Stack Overflow用户

发布于 2012-04-15 17:49:43

如果checkInTime和checkOutTime是位时间戳,那么在将thm存储到contentvalue之前,只需将其转换为毫秒并进行存储,然后在检索时将其重新转换为所需的格式。因为ContentValue不接受timeStamps,所以只需要转换和存储,这样就不会出现任何编译错误。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10160968

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档