sql >> Base de Datos >  >> RDS >> PostgreSQL

Valor decimal en Postgresql devuelto como String en Node.js

Ambos decimal y bigint los tipos pueden contener valores que son demasiado grandes para "encajar" en el Number de JavaScript :

  • Number.MAX_SAFE_INTEGER (JS):9007199254740991
  • bigint :-9223372036854775808 al 9223372036854775807
  • decimal :hasta 131072 dígitos antes del punto decimal; hasta 16383 dígitos después del punto decimal

Si está seguro de que los valores de su base de datos encajarán en Number , puede convertirlos (no conozco Knex, pero tal vez tenga algún tipo de sistema de enlace que pueda usar para transformar los datos que se recuperaron de la base de datos), o cambiar el esquema de su base de datos para que contenga tipos de fila "más pequeños".

Alternativamente, también hay varios "big integer" paquetes para Node que podría usar.