Cassandra 1.1.1如何插入DateType列

时间:2012-06-28 06:06:39

标签: cassandra

我创建了一个列类型为

的列族

{column_name: dob, validation_class: DateType}

现在我想通过CLI在列中插入日期。

当我尝试插入一个值时,会出现以下错误:

  

“无法强迫'1988-1-1'T'01:45:12:112'到格式化日期(长)”

如果有人能指出我出错的地方,我会非常感激。

2 个答案:

答案 0 :(得分:1)

自您的日期的Unix纪元时间戳以来的毫秒数(1988年1月1日01:45:12.112 GMT + 0000(格林威治标准时间)。我在这里假设GMT,没有指定时区)是567999912112。

假设您的CF架构定义如下:

create column family test with column_type='Standard' 
   and key_validation_class = 'UTF8Type' 
   and comparator='UTF8Type'  
   and default_validation_class = 'UTF8Type'
   and column_metadata = [
      {column_name : 'dob', validation_class : DateType}
      ];

以下Cassandra CLI命令正确插入您的日期:

set test['userID']['dob']=567999912112;

要测试它,请尝试:

get test['userID'];

答案 1 :(得分:0)

您必须在unix纪元时间戳中转换日期。