为新数据库创建Sequelize Dialect

时间:2018-01-17 22:41:02

标签: sql node.js orm sequelize.js

我对续集很新,虽然我之前在节点上工作但我没有使用任何ORM框架。目前我使用的是新的SQL DB(sequelize不支持),并希望通过原型化现有方言使用node.js和sequelize(流行的ORM for node.js)进行连接

配置正确,因为我已经尝试过ORM。 问题是在使用属性配置连接之后     sequelize.authenticate()不会抛出任何错误但不会返回承诺

 /**
   * Test the connection by trying to authenticate
   *
   * @error 'Invalid credentials' if the authentication failed (even if the database did not respond at all...)
   * @return {Promise}
   */
  authenticate(options) {
    return this.query('SELECT 1+1 AS result', _.assign({ raw: true, plain: true }, options)).return();
  }

return语句不会返回任何内容。我已阅读此帖how to create a new dialect。虽然它表示不鼓励创建一个新的方言并在我们尝试时抛出错误,但我认为必须有一种方法来创建,因为如果它可以为其他SQL数据库创建,那么可能应该有一种方法可以做它。 This is an open source project on github。有没有人以前在这方面工作任何帮助表示赞赏。在此先感谢

1 个答案:

答案 0 :(得分:0)

仅支持5种方言,如果您尝试使用NewSQL,则会引发错误。

Sequelize中有很多代码可以根据方言构建查询,所以即使您可以通过错误(例如分支回购并更改它),一切都按预期工作的可能性(或者是记录)很低。

我建议在GitHub上发布一个问题,将该方言带入项目。