Я пишу бота, в котором хранятся значения. Одним из которых является количество из 18 мест. Я могу правильно хранить значения в моей базе данных MySQL как BIGINT [20]. Сохраняемые значения верны.
Проблема возникает при попытке получить этот номер. Значение, хранящееся в базе данных, составляет 502033097630416897, однако фактическое значение, возвращаемое mysql, равно 502033097630416900. Для сравнения, здесь они снова:
502033097630416900
502033097630416897
Кажется, что возвращаемое значение либо округляется, либо изменяется. Я хотел проверить эту теорию, поэтому я изменил значение, хранящееся в MySQL, на меньшее число, 123, 1234567 и так далее. Возвращаемые значения на самом деле верны. По некоторым причинам возвращенные значения являются неправильными, если числа, хранящиеся в MySQL, слишком велики. Я бы опубликовал свой код для хранения, но я не думаю, что это уместно, так как фактическое значение сохраняется правильно.
Что касается вызова, у меня есть функция, которая может получить множественный возврат new
Promise((success, fail) => {
con.query(`SELECT * FROM serversettings WHERE serverId = ${serverID}`, (err, rows) => {
switch(type){
case "onjoin":
success(rows[0].onjoin);
Где тип - это данные, которые я хочу получить. Любое понимание будет полезно, спасибо!