Oba decimal
a bigint
typy mohou obsahovat hodnoty, které jsou příliš velké na to, aby se „vešly“ do Number
JavaScriptu :
Number.MAX_SAFE_INTEGER
(JS):9007199254740991bigint
:-9223372036854775808 až 9223372036854775807decimal
:až 131072 číslic před desetinnou čárkou; až 16383 číslic za desetinnou čárkou
Pokud jste si zcela jisti, že hodnoty ve vaší databázi se vejdou do Number
, můžete je převést (neznám Knex, ale možná má nějaký systém háčků, který můžete použít k transformaci dat, která byla načtena z databáze), nebo změnit schéma databáze tak, aby obsahovalo „menší“ typy řádků.
Případně existují také různé "big integer" balíčky pro Node, které byste mohli použít.