LoginSignup
0

More than 3 years have passed since last update.

SQLでテーブルにデータ挿入がうまくいかない時

Posted at

テーブルを作成して、実行すると以下のエラーが発生してしまいました。

エラー内容

SQLSTATE[22003]: Numeric value out of range: 1264 Out of range value for column 'phone_number'
(phone_numbeカラムに入ってる値が指定してる範囲を超えています)

phone_numberのカラムタイプに ”integer” を指定していて、それが原因でした。

$table->integer(‘phone_number');

”integer(INT)” には、最小値〜最大値まで決められた数値があり、それがこちらです。

(ENEEU).png

INTの部分を見てみると、最小値が2〜最大値が8までとなっています。

私は、phone_numbeのカラムに “08022339999” と指定していて、最大値の8を超えた9を入れてしまっていました。
そのため、エラーが発生してしまったのです。

カラムタイプをbigintに変更すれば解決です。

参考記事
https://dev.mysql.com/doc/refman/5.6/ja/integer-types.html

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0