cassandra当前与节点js的时间戳

在下面的插入查询时,我使用dateof(now())它不起作用。 但新的date('2017-09-01 00:00:00 + 0000')这个工作。 请帮助我。

 router.post('/recent_activities', function(req, res, next) { var body =req.body; console.log(body); console.log( body.id + body.setid); var query ="Insert into recent_activities (id,setid,companyid,activity_name,activity_date,activity_by) values (? , ?, ?, ?, ?, ?)" client.execute(query,[body.id,body.setid,body.companyid,body.activity_name, dateof(now()),body.activity_by], function(err, result) { if (err) { throw err; } else { console.log('success!'); } }); res.json({ id:201, message: 'All Success' }); }); 

我得到一个500内部服务器错误。

现在没有定义

 ReferenceError: now is not defined at /apps/node_cassandra/routes/index.js:96:85 at Layer.handle [as handle_request] 

(/apps/node_cassandra/node_modules/express/lib/router/layer.js:95:5)

(/apps/node_cassandra/node_modules/express/lib/router/route.js:137:13)at Route.dispatch

(/apps/node_cassandra/node_modules/express/lib/router/route.js:112:3)在Layer.handle [作为handle_request]

(/apps/node_cassandra/node_modules/express/lib/router/layer.js:95:5)

 at /apps/node_cassandra/node_modules/express/lib/router/index.js:281:22 

date()

在SELECT子句中使用,该函数提取结果集中timeuuid列的时间戳。 此函数将提取的时间戳作为date返回。 使用unixTimestampOf()获取一个原始的时间戳。

根据文档dateOf在select子句中使用。

now()用于为插入生成timeuuid。

所以如果你的列数据types是timeuuid,那么只有你可以使用now() 。 如果是时间戳,则将该date作为new Date()插入。

另外还有toDate函数可用,可用于插入

date

问题…

 client.execute(query, [body.id,body.setid,body.companyid,body.activity_name, dateof(now()),body.activity_by], 

…就是说你的代码引用了dateof(now()) ,就像它是你的Node.js代码的本地variables一样。 我build议把它放在引号中…

 body.activity_name, "dateof(now())",body.activity_by], 

…但是这可能无法按照您打算的方式作为您的陈述的参数。

对于这种情况,修改INSERT语句可能会更容易…

 var query ="Insert into recent_activities (id,setid,companyid,activity_name,activity_date,activity_by) values (?, ?, ?, ?, dateof(now()) , ?)" 

…然后将其从您的参数列表中删除。

请注意, dateOf(now())旨在用于SELECT查询。 与INSERT / UPDATE一起使用它有一个副作用,用你的时间值存储毫秒数,但实际上并没有告诉你他们在那里。 查看更多信息: Cassandra cqlsh – 如何显示时间戳列的微秒/毫秒?

 var query ="Insert into recent_activities (id,setid,companyid,activity_name,activity_date,activity_by) values (? , ?, ?, ?, **dateof(now())**, ?)" client.execute(query,[body.id,body.setid,body.companyid,body.activity_name,body.activity_by], function(err, result) { 

添加“dateof(now())”为我工作通过添加插入值。