有没有办法可以自动更新列创建和上次更新/访问的时间戳?
我们可以使用toTimestamp(now())
函数来存储创建时间。但是我们有一个像writetime(name)
这样的函数,它用于获取最后修改时间吗?是否有类似的功能来读取创建和访问时间?
有没有办法可以自动生成和存储所有三个时间戳lastupdated
/ lastaccessed
和created
时间戳?
答案 0 :(得分:0)
是的,有一个writetime函数,但它只在非主键列上运行。
aploetz@cqlsh:stackoverflow> SELECT name,description,writetime(description)
FROm bookbyname WHERE name='Patriot Games';
name | writetime(description) | description
---------------+------------------------+------------------------------------------------------------------------------------------------
Patriot Games | 1442340092257821 | Jack Ryan saves England's next king, and becomes the target of an IRA splinter terrorism cell.
Cassandra没有跟踪上次访问/阅读,或类似的事情。
在Cassandra中,最后一次写入获胜,所以最后更新和创建将是相同的。但是如果你有一个你知道的专栏已经改变了,而且你知道的专栏没有改变,那么你可以得到两者的写入时间,然后你就可以获得更新和创建的时间。