用大整数推广js

时间:2015-02-10 13:41:06

标签: node.js sequelize.js bigint

我有一个用Node JS编写的应用程序,并使用Sequelize js ORM库来访问我的数据库,即MySql。

我的问题是我的数据库中有一个列是BIGINT,当它的值很大时,我检索它时会得到错误的值。

例如,当数据库中的值为:10205918797953057时,当我使用sequelize获取它时,我得到10205918797953056

我尝试使用big-integer库,但我没有运气。

欢迎任何建议。

P.S:我无法将数据类型更改为VARCHAR。

1 个答案:

答案 0 :(得分:4)

您应该在mysql模块上启用supportBigNumbers和可能bigNumberStringshttps://github.com/felixge/node-mysql#connection-options

new Sequelize(..., {
  dialect: 'mysql',
  dialectOptions: {
    supportBigNumbers: true
  }
});