Insertion d'un entier incorrect dans MySQL
Lors de l'insertion d'un entier dans une base de données MySQL à l'aide d'une requête SQL comme celle fournie :
$sql_query = "INSERT INTO users_info (steam64) VALUES ('$steam64')";
Vous pouvez rencontrer un problème où l'entier inséré diffère de celui stocké dans le $steam64 variable.
Enquête
Le débogage de ce problème implique de vérifier la valeur de $steam64 à l'aide de var_dump ou echo, ce qui confirme que l'entier correct est stocké. La différence réside dans les limitations de stockage des entiers de MySQL.
Solution
La valeur entière maximale que MySQL peut stocker dans un champ int est 2147483647. Si l'entier à insérer dépasse cette valeur limite, elle est tronquée pour s'adapter, ce qui entraîne une valeur incorrecte. Pour résoudre ce problème, modifiez le type de données du champ steam64 de int à bigint. Cela permettra le stockage d'entiers plus grands sans troncature.
EXEMPLE
ALTER TABLE users_info MODIFY steam64 BIGINT;
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!