我几天前在官方的arangodb网站上发布了我的问题,但没有运气没有人回答。所以我来到这里以下是我的问题:
只是想知道如果使用arangoDb作为php sessionHandler,我怎样才能删除过期的会话数据!
如果使用mogodb或mysql存储会话数据,我们可以使用这样的语句来删除过期的数据:db.session.remove({expire:{$ gt:}}) 或者sql:从tbl_session中删除expire<:expire
我只是想知道如何在arangodb中实现这一点。 :)
答案 0 :(得分:3)
我们还不支持修改AQL。 所以你需要执行一些代码:
var q = db._query("FOR s in session filter s.expire < 1393231738788 return s");
while (q.hasNext()) {
db.session.remove(q.next());
}
答案 1 :(得分:1)
从2.2开始,我们确实修改了查询,因此我们数据库的新查询将如下所示:
FOR s IN sessions
FILTER s.expire < DATE_NOW()-86400000
REMOVE s IN sessions
通过此示例,将删除一天的会话。