Node.js 建议使用节点mysql更改现有连接中的数据库

Node.js 建议使用节点mysql更改现有连接中的数据库,node.js,node-mysql,Node.js,Node Mysql,我正在尝试更改节点中现有连接中的数据库。 在createConnectioncall中,连接可能有数据库名称,也可能没有数据库名称。 代码如下: var mysql = require('mysql'); connection = mysql.createConnection( { host : 'localhost', user : 'me', password : 'secret',

我正在尝试更改节点中现有连接中的数据库。 在
createConnection
call中,连接可能有数据库名称,也可能没有数据库名称。 代码如下:

var mysql = require('mysql');


connection = mysql.createConnection( {
    host               : 'localhost',
    user               : 'me',
    password           : 'secret',
    port               : 3306,
    /* database           : 'test' // optional */
});
我正在使用节点mysql库。 目前我正在关闭连接并重新连接


有没有更好的办法?类似于php中的mysql\u select\u db

我发现的唯一方法是使用“use”命令

在您的示例中,它将如下所示

let database = 'my_database';
connection.query(`USE ${database}`, (error, results, fields) => {
    ...
  });

之后,使用此连接的所有查询都将发送到新数据库

您可以使用以下方法更改某些连接参数*:

*这些参数的列表:

  • user
    :新用户的名称(默认为前一个)
  • password
    :新用户的密码(默认为前一个密码)
  • 字符集
    :新字符集(默认为前一个字符集)
  • 数据库
    :新数据库(默认为上一个数据库)

或仅在查询中使用数据库名称

conn.query('SELECT H FROM other.GeoDB WHERE H = \'r1r0f\' LIMIT 1  ', function (err, res, f)
conn.query('SELECT * FROM data.users WHERE U = \'123\' LIMIT 1  ', function (err, res, f)

如何切换连接池中的数据库?@HelloWorld查看此链接以切换连接池中的数据库。请注意,我同意尾注avise关于每个数据库都有一个连接池的说法,而不是在一个公共池中更改数据库。
conn.query('SELECT H FROM other.GeoDB WHERE H = \'r1r0f\' LIMIT 1  ', function (err, res, f)
conn.query('SELECT * FROM data.users WHERE U = \'123\' LIMIT 1  ', function (err, res, f)