MySQL での不正な整数の挿入: 原因と解決策の特定
MySQL データベースに整数を挿入しようとすると、次のような問題が発生する場合があります。挿入された値が意図した入力と予期せず異なっています。この不一致は、意図した値が MySQL でサポートされている最大整数サイズを超えている場合に発生する可能性があります。
提示された特定のシナリオでは、ユーザーは Steam64 ID (変数 $steam64 で識別される) を steam64 列に挿入しようとしています。 MySQL テーブルの。実行すると、挿入された整数が間違っていることがわかります。
根本原因:
この問題の根本原因は、MySQL の最大整数サイズの制限にあります。 MySQL のデフォルトの整数型 INT の最大値は 2,147,483,647 です。これより大きい整数は切り捨てられ、最大値として挿入されます。
解決策:
この問題を解決するには、steam64 列のデータ型を変更する必要があります。 BIGINTへ。 BIGINT は、最大値 9,223,372,036,854,775,807 の整数をサポートします。これは、Steam64 ID を切り捨てずに保存するには十分です。変更された SQL クエリは次のようになります:
$sql_query = "INSERT INTO users_info (steam64) VALUES ($steam64)";
以上がMySQL の整数挿入が正しくないのはなぜですか? どうすれば修正できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。