【发布时间】:2016-05-06 18:18:03
【问题描述】:
如果我想使用两个数据库,是否需要创建多个 Sequelize 实例?即同一台机器上的两个数据库。
如果不是,那么正确的方法是什么?对我来说,必须连接两次才能使用两个数据库似乎有点矫枉过正。
例如,我有不同的数据库用于不同的功能,例如,假设我在一个数据库中有客户数据,在另一个数据库中有统计数据。
所以在 MySQL 中:
MySQL [customers]> show databases;
+--------------------+
| Database |
+--------------------+
| customers |
| stats |
+--------------------+
我有这个与续集联系起来
// Create a connection....
var Sequelize = require('sequelize');
var sequelize = new Sequelize('customers', 'my_user', 'some_password', {
host: 'localhost',
dialect: 'mysql',
pool: {
max: 5,
min: 0,
idle: 10000
},
logging: function(output) {
if (opts.log_queries) {
log.it("sequelize_log",{log: output});
}
}
});
// Authenticate it.
sequelize.authenticate().nodeify(function(err) {
// Do stuff....
});
我试图在使用点符号的模型定义中“欺骗”它
var InterestingStatistics = sequelize.define('stats.interesting_statistics', { /* ... */ });
但这会创建表customers.stats.interesting_statistics。我需要使用 stats 数据库中的现有表。
实现这一目标的正确方法是什么?谢谢。
【问题讨论】:
标签: javascript mysql node.js sequelize.js