Mysql 是否从node.js multipleStatements查询中获取结果?

Mysql 是否从node.js multipleStatements查询中获取结果?,mysql,node.js,node-mysql,Mysql,Node.js,Node Mysql,我有下面的node.js代码通过mysql模块执行它下面的SQL,但是它正在将null打印到控制台,即使在同一mysql用户帐户下手动执行的SQL本身返回预期值。在执行此操作以检索适当结果的过程中,是否缺少某些内容 let wipeSQL = fs.readFileSync('./inc/sql/wipedb.sql', 'utf8').replace('%%DATABASE_NAME%%', conf['databasedatabase']); conn.query(wipeSQL, (err

我有下面的
node.js
代码通过
mysql
模块执行它下面的
SQL
,但是它正在将
null
打印到
控制台
,即使在同一
mysql
用户帐户下手动执行的
SQL
本身返回预期值。在执行此操作以检索适当结果的过程中,是否缺少某些内容

let wipeSQL = fs.readFileSync('./inc/sql/wipedb.sql', 'utf8').replace('%%DATABASE_NAME%%', conf['databasedatabase']);
conn.query(wipeSQL, (err, results, fields) => {
    if (err) {
        conn.destroy();
        reject (false);
        return;
    }
    console.log(results[results.length - 1][0]['@procedures'], fields[fields.length - 1]);
    resolve();
});

其目的是解决
MySQL
中的一个问题,该问题阻止从动态
SQL
和从另一个
存储过程中删除
函数和
存储过程,要求我返回要删除的内容,然后作为单独的语句执行。删除那些
函数
存储过程
的解决方案也同样有效,但我不希望它存在(这是一个来自
PHP
的端口,其中多语句返回工作正常。控制台输出,如果有帮助:

null [ FieldPacket {
    catalog: 'def',
    db: '',
    table: '',
    orgTable: '',
    name: '@procedures',
    orgName: '',
    charsetNr: 33,
    length: 50331645,
    type: 250,
    flags: 0,
    decimals: 31,
    default: undefined,
    zeroFill: false,
    protocol41: true } ]

在conn.query之前执行console.log(wipeSQL)并检查生成并传递给conn.query的查询。然后在mysql查询浏览器上手动触发此查询以查看结果。

do console.log(wipeSQL)在conn.query之前,检查生成并传递给conn.query的查询。然后在mysql查询浏览器上手动启动此查询以查看结果。@AJS好吧,这太愚蠢了。今晚可能是时候发布了,问题归结为替换
。替换(“%%DATABASE_NAME%%”,conf['databasedatabase'])
。拆分(“%%DATABASE_NAME%%”)。加入(conf['databasedatabase'])
谢谢,如果您发布了具有此效果的答案,我将接受,因为您找到了它。欢迎…作为答案添加。。。
null [ FieldPacket {
    catalog: 'def',
    db: '',
    table: '',
    orgTable: '',
    name: '@procedures',
    orgName: '',
    charsetNr: 33,
    length: 50331645,
    type: 250,
    flags: 0,
    decimals: 31,
    default: undefined,
    zeroFill: false,
    protocol41: true } ]