当前位置: 首页 > 面试题库 >

如何在Node.js中将参数传递给MySQL查询回调

邢项禹
2023-03-14
问题内容

我试图找出将自定义数据传递给查询调用以使其在回调中可用的正确方法。我在nodejs(所有最新版本)中使用MySQL库。

我打电话给connection.query(sql,function(err,result){…});

我找不到办法1)将自定义数据/参数传递给调用,以便2)在调用回调时可以使它可用。那么正确的做法是什么?

我有以下(伪代码):

...
for (ix in SomeJSONArray) {
    sql = "SELECT (1) FROM someTable WHERE someColumn = " + SomeJSONArray[ix].id;
    connection.query(sql, function (err, result) {
      ...
      var y = SomeJSONArray[ix].id;
    };
}

从上面的代码,我需要能够将查询中使用的“ ix”的当前值传递给回调本身。

我怎么做?


问题答案:

如果您使用的是node-mysql,请按照文档中的说明进行操作:

connection.query(
    'SELECT * FROM table WHERE id=? LIMIT ?, 5',[ user_id, start ], 
    function (err, results) {

    }
);

该文档还具有用于正确转义字符串的代码,但是在查询调用中使用数组会自动为您进行转义。

https://github.com/felixge/node-mysql



 类似资料:
  • 问题内容: 我有一些如下的JavaScript代码: 我收到未定义的错误,在使用该功能之前,一切都在工作。 我希望一段时间后调用我的函数。我该怎么办? 问题答案: setTimeout(function() { postinsql(topicId); }, 4000) 您需要将匿名函数作为参数而不是字符串作为参数,后一种方法甚至不符合ECMAScript规范,但浏览器比较宽松。这是正确的解决方案,

  • 问题内容: 我在工具栏中有大约10个QAction(此数字在运行时会有所不同),它们都会做相同的事情,但是使用不同的参数。我正在考虑将参数作为属性添加到QAction对象,然后,QAction的触发信号还将对象本身发送给回调函数,以便我可以获取该函数所需的参数。我实际上对此有2个问题: 能做到吗 有更好的方法吗? 问题答案: 您可以使用信号映射器发送动作对象本身。但是,最好仅发送一个标识符并在信号

  • 我写了一个代码来管理一个咖啡馆,所以在框架中我添加了一个JTable,每次我从JComboBox中选择一个项目,它都应该显示在JTable中。为此,我添加了一个按钮,对于它的操作,我确保每次单击它时,它都将从JComboBox中单击的项存储在数据库中,然后将从数据库中获取的项存储在JTable中。但问题是JTable有两列,而JComboBox中的选择只有一列。因此,另一列必须从其他数据库调用,这

  • 问题内容: 在我的HQL查询下方找到 该查询工作正常,但是在此情况下,我想传递userId的值,但无法弄清楚该怎么做。请帮助..!提前致谢..!! 问题答案: 我很简单地将参数添加到HQL __ 在这里,我有硬编码15您可以简单地使用变量代替它

  • 在变换的中间,我从表ABC中创建COL1、COL2和COL3、COL4、COL5。 我通常按如下方式转换这些类型的脚本,然后在查找组件中将列与col1到col5匹配: 我想检查:1-我的方法正确吗?我的意思是,如果记录的数量很高,那么我们可能会面临这个问题,然而,这个查询只返回单行记录。 2-如果我想使用第一种方法,我如何传递参数?我试着去读以前的帖子(以前的解决方案),但问题是我处于一个转换的中

  • 问题内容: 假设我有两个输入框,分别具有对应的ng-model作为fname和lname。如果我将http请求称为: 它会调用URL: 我在后端(python)遇到的错误是: 这些参数不以字符串形式发送吗?如果没有,该如何解决? 问题答案: 这是您的操作方式: Angular负责对参数进行编码。 Maxim Shoustin的答案不起作用(这不是有效的JavaScript文字),而JeyTheva