javascript - 从 DB 四舍五入最后两位数中获取选定的整数
问题描述
当我尝试从我的 sqlite3 数据库中选择数据并使用 node.js 模块 better-sqlite3 获取值时,我遇到了我得到的整数的最后两位被四舍五入的问题。
例如,当我得到它的值时
123412341234123412
,它返回为
123412341234123400
我使用了与我在 DB Browser 中选择值完全相同的 SQL,它可以按我的预期工作(没有四舍五入),但是当我在 better-sqlite3 中执行此操作时,它总是四舍五入。
这是我在 Better-sqlite 中使用的代码:
let getClocked = db.prepare("SELECT messageID FROM clocked WHERE clockedUID = ?").get(id)
console.log(getClocked)
控制台中的返回值:
{ messageID: 643562287101116400 }
我数据库中的值(与插入的值相同,使用 DB Browser for SQLite 查看):
643562287101116427
我也尝试过使用 .all()、.iterate()、.pluck() 和 .raw() 而不是/与 .get() 一起使用,这给了我相同的结果。表中的其他值也会发生。
(这是我用来创建表的 SQL):
CREATE TABLE IF NOT EXISTS "clocked" (
"clockedUID" INTEGER NOT NULL UNIQUE,
"time" TEXT NOT NULL,
"messageID" INTEGER,
PRIMARY KEY("clockedUID")
);
SQLite 和 Better-sqlite3 的新手,因此感谢您的帮助!谢谢!
解决方案
推荐阅读
- c# - ASP.NET MVC 根据下拉列表中选择的选项过滤数据
- excel - 在 VBA 中,我希望 if/elseif 基于操作系统执行,即如果 windows 执行此操作,如果 mac 执行此操作。我该怎么做呢?
- rust - 为什么运行 cargo bench 比运行 release build 快?
- java - spring boot hibernate_sequence 副本
- reactjs - 反应钩子如何渲染数据groupby
- r - 求解R中的联立方程
- java - 在优先级队列中分配随机优先级?
- flutter - 控制器的长度属性 (2) 与 TabBar 的选项卡属性中的选项卡数 (3) 不匹配
- r - 是否有一种自动方法可以在“stargazer”表中显示回归 F 统计量的 p 值?
- r - 使用 R,如何在没有 `devtools` 的情况下安装 github 库