Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/444.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用JS对象作为mySQL查询字符串上的值_Javascript_Mysql_Node.js - Fatal编程技术网

Javascript 使用JS对象作为mySQL查询字符串上的值

Javascript 使用JS对象作为mySQL查询字符串上的值,javascript,mysql,node.js,Javascript,Mysql,Node.js,我使用pool在nodejs上查询mySQL。我们正在做,它工作得很好 let values = [1, 2, 3]; DB.pool.query('SELECT * ROM table_name WHERE col1 = ? AND col2 = ? AND col3 = ?' , values, ( err, rows ) => { //Do something }); 正如您所注意到的,where值位于数组中,我们在查询字符串上使用?插入这些值。问题是,在复杂的查询中,有很

我使用pool在nodejs上查询mySQL。我们正在做,它工作得很好

let values = [1, 2, 3];
DB.pool.query('SELECT * ROM table_name WHERE col1 = ? AND col2 = ? AND col3 = ?' , values, ( err, rows ) => {
    //Do something
});
正如您所注意到的,where值位于数组中,我们在查询字符串上使用
插入这些值。问题是,在复杂的查询中,有很多价值

有没有办法改用object?

比如:

let values = {col1: 1, col1: 2, col1: 3};
查询字符串如下所示:

SELECT * ROM table_name WHERE col1 = :col1 AND col2 = :col2 AND col3 = :col3

任何帮助都将不胜感激。

您可能正在寻找像或这样的查询生成器

您可以编写自己的实用程序函数来帮助将字符串插入查询,也许可以使用,但是已经存在类似于上面的包来帮助您完成其中的一些工作

最终,答案是“不是真的”。SQL查询本质上是一个字符串。或者您将使用为您构建查询的客户机/库(这是您正在使用的任何客户机正在执行的操作,允许您传入一个值数组以插入字符串),或者您将以某种方式手动创建字符串