首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >推荐的更改现有连接中数据库的方法-mysql

问推荐的更改现有连接中数据库的方法-mysql
EN

Stack Overflow用户
提问于 2015-04-09 04:43:09
回答 3查看 8.6K关注 0票数 7

我试图在节点中的现有连接中更改数据库。连接可能在createConnection调用中有数据库名,也可能没有。下面是代码:

代码语言:javascript
复制
var mysql = require('mysql');


connection = mysql.createConnection( {
    host               : 'localhost',
    user               : 'me',
    password           : 'secret',
    port               : 3306,
    /* database           : 'test' // optional */
});

我使用的是节点-mysql库。目前我正在关闭连接并重新连接。

有什么更好的方法吗?类似于php中的mysql_select_db?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2018-01-31 16:17:32

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

代码语言:javascript
复制
connection.changeUser({database : 'my_database'}, function(err) {
  if (err) throw err;
});

*这些参数的清单:

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

Stack Overflow用户

发布于 2017-09-22 18:36:43

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

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

代码语言:javascript
复制
let database = 'my_database';
connection.query(`USE ${database}`, (error, results, fields) => {
    ...
  });

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

票数 6
EN

Stack Overflow用户

发布于 2021-05-12 23:47:24

或者只是在查询中使用数据库名。

代码语言:javascript
复制
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)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29529947

复制
相关文章

相似问题

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