2012-12-26 336 views
2

如果有人能解决我的问题,我会非常感动。卡桑德拉时间戳类型列转换

我通过C#使用Cassandra Thrift API。我在Cassandra中有一个“timestamp”类型的列,它应该是自Unix时代以8个字节表示的秒数。

要转换,我这样做:

BitConverter.GetBytes(ToUnixTimestamp(columnValue))); 

其中:

protected static long ToUnixTimestamp(DateTime dateTime) 
{ 
    return Convert.ToInt64((dateTime - new DateTime(1970, 1, 1).ToLocalTime()).TotalSeconds); 
} 

当我在CLI检查我的价值,我看到:

=> (column=created, value=225330207-01-15 03:30:53-0500, timestamp=1356568301) 

卡桑德拉不解释我正确插入的值。 不是我插入的。为什么会发生这种情况,我该如何解决这个问题?

回答