edo1z blog

プログラミングなどに関するブログです

MySQL 数字データをINSERTしたら別の数字になっている件

SQL初心者です。PHPでMySQLを本日使い始めました。初めてのINSERTで衝撃を受けています。というのも、数字データをINSERTしたら、全く別の数字データがINSERTされているからです。原因不明なので調べていきます。

現象はこうです。INSERTした数値データは、409312097であるにも関わらず、INSERTされた結果を確認すると、8388607になっている。

すぐに原因が分かりました。。数値型(データ型)のまとめに記載されていますが、数値データのデータ型を何も考えずにMEDIUMINTにしていました。しかし、これの最大値が8388607なのでした。最大値より大きい数値を登録しようとすると最大値になるんですね。勉強になりました。INTにしたら解決されました。