[英]How I can access multiple DB using ExpressJS?
我有一台服務器,具有3個具有相同表的數據庫。
DB1,DB2和DB3。
當我使用數據庫時,我使用:
app.js
var cnxDB= require('./routes/cnxDB');
app.post('/userSave', cnxDB.userSave);
cnxDB.js:
var sql = require('mssql');
var qs = require('querystring');
var colors = require('colors');
var config = {user: 'user',password: 'pass',server: '127.0.0.1',database: nameDB',
options: {
encrypt: false
}
};
sql.connect(config, function(err) {
//Connection
});
exports.userSave = function(req, res) {
//response
};
初始化應用程序時,將立即建立與數據庫的連接。
我需要知道如何選擇數據庫。
app.post('/selectBD', function(req, res){
var body = req.body; // accede a la información enviada por el socket
console.log(body);
if(body.cnx == 1)
{
var cnx = require('./routes/bdUno');
app.get('/yuri', cnx.findall);
}
if(body.cnx == 2)
{
var cnx = require('./routes/bdDos');
app.get('/yuri', cnx.findall);
}
if(body.cnx == 3)
{
var cnx = require('./routes/bdTres');
app.get('/yuri', cnx.findall);
}
res.status(200).json("Ok");
});
謝謝。
在cnxDB.js
設置3個連接:
var connections = {
<dbname>: null,
<dbname>: null,
<dbname>: null
}
轉到mssql並查看“快速示例”。 它創建一個連接並將其保存在變量中。 您希望對每個數據庫執行3次操作,並將它們保存在相應數據庫名稱下的connections
。
然后,您從cnxDB.js
導出的函數應該可以知道您要使用哪個數據庫。 從外觀上看,您希望對該請求的正文中需要使用的數據庫有所了解。 您可以使用它來選擇數據庫。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.