mysql - Sails.js/Waterline - MySQL 查询未返回

标签 mysql sails.js waterline

我发现了一些奇怪的行为。当我包含某个 where 子句时,查询根本不返回。 . .

var query = "SELECT id FROM tbl_jobs WHERE jobSiteId = "+site.id+/*" AND jobStartStamp > "+start_stamp +*/" ORDER BY jobStartStamp ASC LIMIT 1";
//sails.log.error(query);
Visit.query(query,function(err, visit){
  if (err) {
    sails.log.error(err);
    return res.serverError(err);
  } 
  return res.send(visit);
});
//Visit.find({site:site.id, start:{">",start_stamp}).sort({start:"ASC"}).limit.exec
... doesn't work

当我注释掉“jobStartStamp”where 子句时,查询返回正常。当我把它放回去时,它不会调用回调。我在 sails 控制台上没有收到任何错误。

当我在 phpMyAdmin 中执行查询(使用整个 where 子句)时,我得到了响应(<1 秒)。

任何想法如何找出发生这种情况的原因?

最佳答案

您是在两个实例中针对同一个数据库运行,还是一个数据库在您的服务器上而另一个在您的桌面上?如果数据以“<”而不是“>”返回,则表明您的服务器在早于 start_stamp 的日期/时间具有 jobStartStamp。
是否未调用 Visit 回调,或者它是否从查询中获得了空结果集?

关于mysql - Sails.js/Waterline - MySQL 查询未返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32181662/

相关文章:

mysql - 动态表有点像 View ,但有一个可更新的额外列?

javascript - 选择 Assets sailsjs

node.js - Sails.js Redis 如何流式传输数据?

javascript - promise : execute after loop

sails.js - Sailsjs-水线 : How to filtering after populate?

javascript - 水线错误 : "Unknown rule: default"

php - 如何在使用前检查返回值是否为数组?

mysql - 在 MySQL 连接字符串中指定密码

mysql - WHERE 子句中的多个 OR 条件 - 仅返回一条记录

node.js - 如何在sails模型的afterCreate中获取session参数