首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在nodejs中的query()函数中传递多个查询

在nodejs中的query()函数中传递多个查询
EN

Stack Overflow用户
提问于 2021-07-27 11:50:09
回答 2查看 298关注 0票数 1
代码语言:javascript
复制
In this only first query will run how I pass 2 query simultaneously .

我想同时运行insert或update查询。

db.js

代码语言:javascript
复制
require('dotenv').config()
const mysql = require('mysql');


const db_config = {
    connectionLimit: 10,
    host: "localhost",
    user: "root",
    password: "",
    database: "vechain"
};

const pool = mysql.createPool(db_config);
exports.pool = pool;
exports.query = function(query) {
    try {
        return new Promise((resolve, reject) => {
            pool.query(query, function(err, result, fields) {
                if (err) reject(err);
                resolve(result);
            });
        })
    } catch (err) {
        console.log('in db_sql function error');
        console.log(err);
        res.status(500).send({ success: false, msg: 'Error', data: '', errors: err });
    }
}

**app.js**

const db = require('./db'); //here I inclue database details

//这是我的query = await db.query(‘插入测试(名称)选择"kk“(如果不存在)(从name="kmkm”的测试中选择*);’更新测试集名称= "88“,其中id =”463“);

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-07-28 10:44:10

文档中,您可以传递两个查询。

我在配置中添加了一个选项multipleStatements: true,

此外,我还使用...argsquery函数传递多个查询。

从文档中,请注意,用于流多语句查询的接口是实验性的

示例:

代码语言:javascript
复制
require("dotenv").config();
const mysql = require("mysql");

const db_config = {
  connectionLimit: 10,
  host: "localhost",
  user: "root",
  password: "",
  database: "vechain",
  multipleStatements: true,
};

const pool = mysql.createPool(db_config);
exports.pool = pool;
exports.query = function (...args) {
  try {
    const query = args.join(";");
    console.log({ query });
    return new Promise((resolve, reject) => {
      pool.query(query, function (err, result, fields) {
        if (err) reject(err);
        resolve(result);
      });
    });
  } catch (err) {
    console.log("in db_sql function error");
    console.log(err);
    res
      .status(500)
      .send({ success: false, msg: "Error", data: "", errors: err });
  }
};

你app.js

代码语言:javascript
复制
const db = require("./db"); //here I include database details

const query1 = "SELECT 1";
const query2 = "SELECT 2";

db.query(query1, query2).then(res => {
  console.log(res);
});
票数 0
EN

Stack Overflow用户

发布于 2021-07-27 11:55:01

试试看;

代码语言:javascript
复制
var check = db.query(query1,query2);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68544292

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档