从数据库四舍五入后的两位数中选择整数

当我尝试从sqlite3数据库中选择数据并使用node.js模块Better-sqlite3获取值时,遇到了我要获取的整数的最后两位四舍五入的问题。

例如,当我得到值时 123412341234123412 它返回为 123412341234123400

我使用了与我在数据库浏览器中选择值时使用的完全相同的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()代替/getside.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的新手,因此感谢您提供任何帮助!谢谢!

vera0101 回答:从数据库四舍五入后的两位数中选择整数

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3121156.html

大家都在问