javascript - JavaScript 中的 64 位整数,来自 Mysql 请求

标签 javascript mysql node.js integer 64-bit

我将这个数字 76561197993482001(64 位整数)作为 bigint(20) 存储在我的数据库中。

但是当我尝试使用 :

获取它时
//node.js
    query('SELECT * FROM table',function(err,rows){
      console.log(rows[0]["id"]);// I get 76561197993482000
      });

我打错电话了。我猜这是因为 js 无法处理 64 位变量。

我知道 js 中有用于 bigint 的库,但是这个数字直接存储在 rows 变量中。那我该怎么做呢?

有没有办法在我发送请求时将其转换为文本?

最佳答案

根据您使用的中间件,它们中的大多数都有支持大数的设置,最常见的中间件为此使用 supportBigNumbers 选项

var mysql      = require('mysql');
var connection = mysql.createConnection({
  host              : 'example.org',
  user              : 'bob',
  password          : 'secret',
  supportBigNumbers : true
});

关于javascript - JavaScript 中的 64 位整数,来自 Mysql 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30568202/

相关文章:

javascript - 提交表单时 Angular 事件成功打开弹​​出窗口

c# - 使用 Visual Studio 2013 加密(安全)数据通信 C# -> 远程 MySQL

java - 如何打印二叉树

node.js - 数据绑定(bind)到 Node.js 中的 ejs 文件不起作用

javascript - 在代码隐藏中生成的链接/图标不会显示在某些移动设备上

javascript - 在 unray 表达式中声明 var?

php - session_register 工作但 $_SESSION 不 :/

node.js - 是否可以使用服务主体来访问 Blob 存储?

javascript - 如何在 angular-chart.js 中对齐图例

c# - 为什么我在 C# 类中收到此错误?