Javascript 如何使用NodeJS、Express和Sequelize创建动态数据库连接?

Javascript 如何使用NodeJS、Express和Sequelize创建动态数据库连接?,javascript,node.js,database,express,sequelize.js,Javascript,Node.js,Database,Express,Sequelize.js,你好吗?有人知道如何使用NodeJS、Express和Sequelize动态创建数据库连接吗 我的开发团队正在为我们的移动应用程序开发API,在登录页面上,我们将有3个字段: 企业代码 用户名 密码 当用户输入“企业代码”时,我需要转到默认数据库,该数据库存储所有客户,并根据字段中输入的内容搜索客户数据。让我们假设企业代码是147,然后API将客户表放入默认数据库,并搜索customer_id=147的数据。这将返回客户数据,其中还包含其数据库名称,例如147_enterprisename,

你好吗?有人知道如何使用NodeJS、Express和Sequelize动态创建数据库连接吗

我的开发团队正在为我们的移动应用程序开发API,在登录页面上,我们将有3个字段:

  • 企业代码
  • 用户名
  • 密码
当用户输入“企业代码”时,我需要转到默认数据库,该数据库存储所有客户,并根据字段中输入的内容搜索客户数据。让我们假设企业代码是147,然后API将客户表放入默认数据库,并搜索customer_id=147的数据。这将返回客户数据,其中还包含其数据库名称,例如147_enterprisename,这是一个名为“147_enterprisename”的数据库,表示该客户

我需要的是:根据键入的“企业代码”创建Sequelize连接,如下所示:

const Sequelize = require('sequelize')

const sequelize = new Sequelize(dynamic_database_name, 'root', 'root', {
   host: 'localhost',
   dialect: 'mysql',
   pool: {
      max: 10,
      min: 0,
      acquire: 30000,
      idle: 10000
    }
})

我还需要API返回到所有路由的连接,其中是从数据库获取数据的函数等等。

您可以编写一个实用程序函数,返回Sequelize连接对象。对于每个用户请求,您都需要连接、处理用户请求,然后断开连接。这会增加应用程序的开销,这可能会有问题。我想最好是设计一个数据库,将客户id作为所有必要表的主键的一部分。谢谢您的回复。不幸的是,数据库目前运行在一个已经运行的软件上,因此我们正在为一个正在运行的系统创建API,这意味着我们不能有一个数据库,每个客户都有它唯一的数据库。顺便说一句,我们将再次尝试您的解决方案,ty。@VictorMathiusso我面临同样的问题。如果您找到了任何征服解决方案,请告诉我。您可以编写一个实用函数,返回Sequelize连接对象。对于每个用户请求,您都需要连接、处理用户请求,然后断开连接。这会增加应用程序的开销,这可能会有问题。我想最好是设计一个数据库,将客户id作为所有必要表的主键的一部分。谢谢您的回复。不幸的是,数据库目前运行在一个已经运行的软件上,因此我们正在为一个正在运行的系统创建API,这意味着我们不能有一个数据库,每个客户都有它唯一的数据库。顺便说一句,我们会再次尝试你的解决方案,泰。@VictorMathiusso我面临同样的问题,如果你找到了任何解决方案,请告诉我。