Android SQLiteStatement:如何绑定数字(Date,BigDecimal)

时间:2018-03-02 21:39:44

标签: android database sqlite

Android SQLiteStatement:如何绑定数字(Date,BigDecimal)?

SQLiteStatement有

bindNull
bindLong
bindDouble
bindString
bindBlob

对于java.util.Date和java.util.BigDecimal,它们将作为列类型映射到Numeric。但是没有bindNumeric(...)方法。哪种方法可以绑定这些类型?

1 个答案:

答案 0 :(得分:0)

日期

Date可以绑定为long或String,具体取决于值。前者如果它是日期的整数表示,后者如果它是一个更人性化的日期。使用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
  •   

Date And Time Functions

大十进制

你可以降级为double并绑定为double(注意潜在的损失),绑定为字符串(注意类型亲和力发挥作用,即列亲和力应该是TEXT)或者使用两个longs一个用于比例,一个用于un -scaled value。

您应该参考Datatypes In SQLite Version 3