【问题标题】:Cassandra 1.1.1 how to insert into DateType ColumnCassandra 1.1.1 如何插入 DateType 列
【发布时间】:2013-06-28 13:56:08
【问题描述】:

我创建了一个列类型为

的列族

{column_name: dob, validation_class: DateType}

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

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

“无法将 '1988-1-1'T'01:45:12:112' 强制转换为格式化日期(长)”

如果有人能指出我哪里出错了,我将非常感激。

【问题讨论】:

    标签: cassandra


    【解决方案1】:

    自您日期的 Unix 纪元时间戳(1988 年 1 月 1 日 01:45:12.112 GMT+0000 (GMT)。我假设此处为 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'];
    

    【讨论】:

      【解决方案2】:

      您必须将日期转换为 unix 纪元时间戳。

      【讨论】:

        猜你喜欢
        • 2013-08-17
        • 1970-01-01
        • 2012-07-05
        • 2014-05-05
        • 2016-07-06
        • 1970-01-01
        • 1970-01-01
        • 2021-12-10
        • 2019-01-27
        相关资源
        最近更新 更多