ホームページ >データベース >mysql チュートリアル >MySQL データベースで SteamID64 が切り捨てられるのはなぜですか? どうすれば修正できますか?
MySQL 整数精度の制限:
Steam Web API は、$steam64 として知られる 64 ビット整数を提供します。 INSERT INTO users_info (steam64) VALUES ('$steam64') クエリを使用してこの値を MySQL データベースに挿入すると、変数に格納されている値とデータベースに挿入された値の間に不一致が発生します。
これは、MySQL には整数型の精度制限があるためです。整数列に格納できる最大整数値は 2,147,483,647 です。 $steam64 の値がこの制限を超えているため、MySQL はそれを最大許容値である 2,147,483,647 に切り捨てます。
解決策:
この問題を解決するには、列を変更します。 INT から BIGINT までの型。 BIGINT は最大 9,223,372,036,854,775,807 までの整数を格納できます。これは 64 ビット整数には十分です。
テーブル定義を変更して次の変更を含めます。
ALTER TABLE users_info MODIFY COLUMN steam64 BIGINT;
この変更を行うと、クエリは正しい 64 ビット $steam64 値を挿入しますデータベースに保存します。
以上がMySQL データベースで SteamID64 が切り捨てられるのはなぜですか? どうすれば修正できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。