CakePHPで開発を行っているとさまざま問題にぶつかります。
CakephpではデータベースをMySQLを使用している場合は、テーブルの「id」からむや「modified」「created」など固定された
特殊なカラムが必要になってきます。
(使わなくてもいけるかもですが、、)
特に「id」カラムは、オートインクリメント(autoincrement)をONにして、NULLをOFFにして、自動連番をさせることが必須です。
このidカラムは、データベースの「更新」の時は、必ず必要で、更新時にidを明記しないと「追加」になってしまいます。
このidカラムに、間違って大きな値を入れてしまう、例えば、1,2,3,40,20192049504839429349504をINTで入れてしまうと下記のようなエラーに
なって、それ以降は、テーブルにデータが入りません!
正しいIDを入力するもしくは、IDを無しに「追加」する場合でも、エラーで全くデータが入らない。。。
僕の場合は、このテーブルにはカラムが100個近くあるので、テーブルを再度作り直すことも絶対に避けたい。
そんな時の解決策は、こんなことで解決しました。
phpMyAdimを使います。
1,idのAUTO_INCREMENTを一旦OFFにする
2,再度、AUTO_INCREMENTをONにする
これで、このエラーは回避できて、データが正しく挿入されます。
しかも、前に入っているIDの続きからIDをふってくれます!!