js数量限制
js number limit
下午好,数据发送到数据库:channel:966735614273806457
留言:966735619332136962
它们在数据库中正确显示。
但是当我尝试获取它们时,我得到一个带有四舍五入数字的对象,例如:
{ id: 29, channel: 966735614273806500, message: 966735619332137000 }
我正在通过以下查询获取数据:
const sqlq = `SELECT * FROM report`
await data.db.all(sqlq,[],(err,row)=>{
console.log(row[row.length-1])
})
总的来说,我的任务是每次获取数据库的最后一个元素,如果不把所有元素都加到数组中还有获取的可能,那么我想知道这个。
我正在使用 sqlite 库
A BIGINT
最多可以存储这些值的 10 倍的整数,因此它们实际上可能是数字。您可能需要检查数据类型以确定它们是否为字符串。
这些值超过 100 倍JavaScript's MAX_SAFE_INTEGER。您可能希望将输出作为字符串处理,而不考虑数据库中存储的类型。根据上下文,这看起来像是一个属性,所以我无法想象您需要对其进行任何数学运算。
不要使用 SELECT *
。是故意的。对数据库的更改很容易破坏您的代码。你可能想要像
这样的东西
const sqlq = `SELECT id, cast(channel as varchar(25)) as channel, cast(message as varchar(25)) as message FROM report`
await data.db.all(sqlq,[],(err,row)=>{
console.log(row[row.length-1])
})
下午好,数据发送到数据库:channel:966735614273806457 留言:966735619332136962
它们在数据库中正确显示。 但是当我尝试获取它们时,我得到一个带有四舍五入数字的对象,例如:
{ id: 29, channel: 966735614273806500, message: 966735619332137000 }
我正在通过以下查询获取数据:
const sqlq = `SELECT * FROM report`
await data.db.all(sqlq,[],(err,row)=>{
console.log(row[row.length-1])
})
总的来说,我的任务是每次获取数据库的最后一个元素,如果不把所有元素都加到数组中还有获取的可能,那么我想知道这个。 我正在使用 sqlite 库
A BIGINT
最多可以存储这些值的 10 倍的整数,因此它们实际上可能是数字。您可能需要检查数据类型以确定它们是否为字符串。
这些值超过 100 倍JavaScript's MAX_SAFE_INTEGER。您可能希望将输出作为字符串处理,而不考虑数据库中存储的类型。根据上下文,这看起来像是一个属性,所以我无法想象您需要对其进行任何数学运算。
不要使用 SELECT *
。是故意的。对数据库的更改很容易破坏您的代码。你可能想要像
const sqlq = `SELECT id, cast(channel as varchar(25)) as channel, cast(message as varchar(25)) as message FROM report`
await data.db.all(sqlq,[],(err,row)=>{
console.log(row[row.length-1])
})