Node.js和node-mysql DB查询-需要同步代码帮助
||
我正在编写一些非Web应用程序帮助程序,并且遇到了对同步查询调用的需求。
基本上,在循环中,我需要检查数据库以查看该值是否存在。如果没有,则插入值。当前,使用node-mysql我只能使它与回调一起使用。因此,node.js将调用视为异步调用,并在查询完成之前继续处理我的请求。这是一个大问题,因为最后可能会因为队列中的重复项而插入重复项。
理想的解决方案-不起作用。结果实际上是客户的对象,我无法在其中找到实际结果。但是,这确实使其同步。
results = client.query(\'SELECT COUNT(md5) as md5Count FROM table WHERE md5 = \"\' + md5 + \'\"\')
以下无效。 Node.js将其视为异步,而externalResult仍然是客户端的对象。
outerResult = client.query(\'SELECT COUNT(md5) as md5Count FROM board WHERE md5 = \"\' + md5 + \'\"\', function selectCb(err, results, fields) {console.log(results);});
任何帮助表示赞赏。
没有找到相关结果
已邀请:
2 个回复
苛肠倒俱
这是一个超级简化的示例,而不是最优化的示例。如果需要,您可以在此处使用数据集来执行相同的操作,而不是逐条记录。
抬澈帅沮
或其他一些过滤器解决了。 所以你只要叫