Mysql returning incorrect bigint result by one, very strange error

bigint, mysql, node.js, rest

Solution

The maximum integer JavaScript can safely represent is Number.MAX_SAFE_INTEGER, which is 2^53 - 1. Your value is greater than that, which is causing some bits to be lost.

node-mysql has `supportBigNumbers` and `bigNumberStrings` options that parse `BIGINT`s as strings.

var connection = mysql.createConnection({
                            supportBigNumbers: true,
                            bigNumberStrings: true
                 });

Problem

I really don't know what is going on here. I have a database table that looks like this: With this data: When I run this query `SELECT * FROM game WHERE id = 4` in phpmyadmin I get back this result as expected: But when I make this query on it through a rest api (where gameId = 4) ``` var query = connection.query("SELECT * FROM game WHERE id = ? ",[game.gameId],function(err,rows){ ``` I get this result Where adminId for some reason has been subtracted by one. I really haven't a clue what is going on. I have tried dropping the table and setting it back up, has anyone experienced this before? Or know what is wrong? It's pretty frustrating! Thanks

Original source