Duplicate entry '127' cakePHPでsave時にエラーが出る

Shunsuke Sawada

データベースの構造はちゃんと確認しないとね。

cakePHP 2.2

こんなことをよくするよね。
$this->Model->save($this->request->data);

でエラーはこんなの。
Warning (512): SQL Error: 1062: Duplicate entry '127' for key 1

えー。別に複製してるわけじゃないのにー!
と思ったらmySQLでフィールドの型を確認使用。

TINYINTじゃ「-127〜127」までしか入らないので、エラーが出てたみたい。
INTにしたらあっさり解決。

It sounds like the data type of your id field is a signed tinyint, which has a maximum value of 127. The range is -127 to 127 (or something close to that). You need to change the data type. If you make it unsigned it has a range of 0 to 255. If that isn't enough you'll have to increase it to smallint.

↓参考サイト
https://groups.google.com/forum/?fromgroups=#!topic/cake-php/f8yFQbWmtCI

Shunsuke Sawada

おすすめの記事

Railsのバリデーションエラー後にレイアウトが崩れるとき
SlackのOAuthを使って独自アプリをインストールさせる
1
EC2でインスタンスを立ち上げてCapistranoでGithubからWordpressをデプロイするまで