javascript - 如何停止在 MySQL 中舍入 int 值

标签 javascript mysql node.js discord.js

我是一名 Discord 机器人开发者。我正在尝试将 MySQL 用于我的 discord 机器人。我正在尝试将公会 ID 保存在我的表中。当我发布到表格时,公会 ID 会自动四舍五入。 例如我的公会 ID 是 837465019283745861。它的发布方式类似于 837465019283745900。 我正在使用 mysql 模块。

我的表:

CREATE TABLE guilds (
id INT PRIMARY KEY AUTO_INCREMENT,
guild_id BIGINT(18) NOT NULL);

我的邮政编码:

const guild = 837465019283745861;
connection.query('INSERT INTO guilds (guild_id) VALUES (?)', guild, function(error, results, fields) {
    if (error) throw error;
    console.log('Data sent!');
});

最佳答案

这些值在 MySQL 中不会四舍五入。那是 JavaScript 搞砸了,因为你没有使用 BigInt :

const guild = 837465019283745861n;

除非另有说明,否则 JavaScript 中的所有数字实际上都是 float 。这会导致对较大数字进行四舍五入。

关于javascript - 如何停止在 MySQL 中舍入 int 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63254209/

相关文章:

javascript - 如何重写模块函数的实现

javascript - puppeteer 师卡在弹出窗口上

javascript - 主干.js 的目的是什么?

php - 用一个变量查询多个字段的PDO最佳实践

MySQL子查询问题

mysql - 使用 like 与代码点火器事件记录连接

node.js - NestJS - 文件上传到微服务

javascript - 在用户按顺序滚动时使用不透明度动画 SVG 路径

javascript - 如何使用选择和按钮创建指令

javascript - Power BI 如何使用 powerbi javascript api 获取嵌入式报表中的视觉数据